<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Swaf</name>
    </assembly>
    <members>
        <member name="T:Swaf.Versioning.BTreeVersioningDictionary">
            <summary>
            This versioining dictionary uses a BTree Dictionary as its internal storage.
            </summary>
        </member>
        <member name="T:Swaf.Versioning.BaseVersioningDictionary">
            <summary>
            This class provides the base implementation for versioning dictionaries. All puts into this dictionary go into a single
            base storage location.  Gets lookup against a cache storage first, then fall back to the base storage location if 
            the requested versioned key is not found.  Once an item is found in the base storage, it is added to the cache using
            the requested versioned string.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.#ctor">
            <summary>
            Constructor for the BaseVersioningDictionary class.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.readFromSource(System.String)">
            <summary>
            This method is overridden by the concrete implementation of this class and provides threadsafe read access to the Base storage.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.writeToSource(System.String,System.Object,System.Object)">
            <summary>
            This method is overridden by the concrete implementation of this class and provides threadsafe write access to the Base storage.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.readFromCache(System.String)">
            <summary>
            This method is overridden by the concrete implementation of this class and provides threadsafe read access to the Cache storage.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.writeToCache(System.String,System.Object,System.Object)">
            <summary>
            This method is overridden by the concrete implementation of this class and provides threadsafe write access to the Cache storage.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.getValue(System.String)">
            <summary>
            This method provides the base implementation of the get algorithm.  It is called by any implemented methods that retrieve 
            data from the dictionary.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.GetEnumerator">
            <summary>
            Overridden IDictionary GetEnumerator method. This method is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.Remove(System.Object)">
            <summary>
            Overridden IDictionary Remove method. This method is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
            <param name="key"></param>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.Contains(System.Object)">
            <summary>
            Overridden IDictionary Contains method. This method is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.Clear">
            <summary>
            Overridden IDictionary Clear method. This method is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.Add(System.Object,System.Object)">
            <summary>
            Overridden IDictionary Add method. This method is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
            <param name="key"></param>
            <param name="value"></param>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.CopyTo(System.Array,System.Int32)">
            <summary>
            Overridden ICollection CopyTo method. This method is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
            <param name="array"></param>
            <param name="index"></param>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningDictionary.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Overridden IEnumerable GetEnumerator method.
            </summary>
            <returns></returns>
        </member>
        <member name="P:Swaf.Versioning.BaseVersioningDictionary.IsReadOnly">
            <summary>
            Overridden IDictionary IsReadOnly property.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BaseVersioningDictionary.Values">
            <summary>
            Overridden IDictionary Values property. This property is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BaseVersioningDictionary.Keys">
            <summary>
            Overridden IDictionary Keys method. This method is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BaseVersioningDictionary.IsFixedSize">
            <summary>
            Overridden IDictionary IsFixedSize method.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BaseVersioningDictionary.IsSynchronized">
            <summary>
            Overridden ICollection IsSynchronized property.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BaseVersioningDictionary.Count">
            <summary>
            Overridden ICollection Count property. This property is implemented as virtual so that it can be
            overridden by specific implementations of the VersioningDictionary.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BaseVersioningDictionary.SyncRoot">
            <summary>
            Overridden ICollection SyncRoot property.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.#ctor">
            <summary>
            Constructor for the BTreeVersioningDictionary.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.readFromCache(System.String)">
            <summary>
            Overridden BaseVersioningDictionary readFromCache method.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.writeToCache(System.String,System.Object,System.Object)">
            <summary>
            Overridden BaseVersioningDictionary writeToCache method.
            </summary>
            <param name="key"></param>
            <param name="value"></param>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.readFromSource(System.String)">
            <summary>
            Overridden BaseVersioningDictionary readFromSource method.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.writeToSource(System.String,System.Object,System.Object)">
            <summary>
            Overridden BaseVersioningDictionary writeToSource method.
            </summary>
            <param name="key"></param>
            <param name="value"></param>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.Remove(System.Object)">
            <summary>
            Overridden IDictionary Remove method.
            </summary>
            <param name="key"></param>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.Contains(System.Object)">
            <summary>
            Overridden IDictionary Contains method.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.Clear">
            <summary>
            Overridden IDictionary Clear method.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.Add(System.Object,System.Object)">
            <summary>
            Overridden IDictionary Add method.
            </summary>
            <param name="key"></param>
            <param name="value"></param>
        </member>
        <member name="M:Swaf.Versioning.BTreeVersioningDictionary.CopyTo(System.Array,System.Int32)">
            <summary>
            Overridden ICollection CopyTo method.
            </summary>
            <param name="array"></param>
            <param name="index"></param>
        </member>
        <member name="P:Swaf.Versioning.BTreeVersioningDictionary.Values">
            <summary>
            Overridden IDictionary Values property.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BTreeVersioningDictionary.Keys">
            <summary>
            Overridden IDictionary Get property.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BTreeVersioningDictionary.Count">
            <summary>
            Overridden ICollection Count property.
            </summary>
        </member>
        <member name="T:Swaf.UserAgent">
            <summary>
            Given a user agent string from the browser, this class will attempt to parse the 
            information in it to get Windows and IE verion numbers.
            </summary>
        </member>
        <member name="T:Swaf.NameAddress">
            <summary>
            Summary description for NameAddress.
            </summary>
        </member>
        <member name="T:Swaf.Messaging.TextMessageResolver">
            <summary>
            Summary description for TextMessageResolver.
            </summary>
        </member>
        <member name="T:Swaf.Logging.Trace">
            <summary>
            Summary description for Trace.
            </summary>
        </member>
        <member name="T:Swaf.Logging.BaseLog">
            <summary>
            Summary description for BaseLog.
            </summary>
        </member>
        <member name="T:Swaf.Gui.BaseSpreadsheetLayout">
            <summary>
            Summary description for BaseSpreadsheetLayout.
            </summary>
        </member>
        <member name="T:Swaf.Gui.BaseLayoutManager">
            <summary>
            Summary description for BaseLayoutManager.
            </summary>
        </member>
        <member name="T:Swaf.Gui.BaseGuiWidget">
            <summary>
            Summary description for BaseGuiWidget.
            </summary>
        </member>
        <member name="M:Swaf.Gui.BaseLayoutManager.addChild(System.Object,System.String)">
            <summary>
            This method is origionally defined in the <c>ILayoutManager</c> interface.
            A virtual implementation of this method is provided here to simplify the development
            of real layout managers.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.MultiAdoNetDataResponse">
            <summary>
            Maintains the results of the MultiAdoNetDataRequest in a
            AdoNetDataRequestInfo object.  When asked, it will format the results
            of the dar through either the default formatter or a formater provided.
            </summary>
            <remarks>
            This class works closely with MultiAdoNetDataRequest in order to 
            manage the extension dars that may be available.  When the Multi-DAR
            has extensions and they have results (hasResults="true" in the dar
            definition catalog file), the MultiAdoNetDataRequest doesnt execute
            the extension dars, this class does.  This is because the db
            connection doesnt get released until the formatting gets done if
            there are results.  These two classes wait until the main dar is called
            and asked to be formatted.</remarks>
        </member>
        <member name="T:Swaf.DataAccess.AdoNetDataResponse">
            <summary>
            Summary description for AdoNetDataResponse.
            </summary>
        </member>
        <member name="T:Swaf.Container.TimeExpireContainerNode">
            <summary>
            Summary description for TimeExpireContainerNode.
            </summary>
        </member>
        <member name="T:Swaf.Container.ExpireNodeBase">
            <summary>
            This is the base class for expiration node implementations. 
            </summary>
        </member>
        <member name="T:Swaf.Container.RuleCatalogContainerNode">
            <summary>
            RuleCatalogContainerNode provides a general purpose catalog type which uses a 
            business rule to instantiate the requested entry type.  This catalog can be used
            to wrap multiple catalog types and provide failover type support (look on file system,
            then in db) or to add versioning or custom biz logic to the catalog entry creation.
            
            The RuleCatalogContainerNode is instantiated using the following config pattern:
            catalog using rule {rule name}
            
            The parameters passed into the Get/Put are passed on to the rule call along with the catalog name and the method (get/put)
            in a single INameAddressSupport instance (Dictionary).
            </summary>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.RuleQueue">
            <summary>
            Summary description for RuleQueue.
            </summary>
        </member>
        <member name="F:Swaf.BizRule.ThreadedQueue.RuleQueue.m_waitingInitialRequests">
            <summary>The list of executing initial requests that want threads.</summary>
            <remarks>The list is always ordered the head of the list containing all the 
            initial requests that need threads followed by all the requests that want threads.</remarks>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.ResultsRuleGroup">
            <summary>
            Summary description for ResultsRuleGroup.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.IRuleGroupControl">
            <summary>
            Summary description for IRuleGroupControl.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.LoggingDecorator">
            <summary>
            This class provides the ability to log the input and results of any rule call
            via the log decorator.  It is controlled by adding the log attribute to a rule 
            declaration with a value of true to enable logging.  Optionally, a logLevel and/or 
            logExceptionsOnly attribute can be added to further control teh logging behavior.  
            If these optional attributes are not provided, the default logging level will be used
            as defined in the application feature file and all rule calls to this rule will be logged.
            </summary>
        </member>
        <member name="M:Swaf.BizRule.LoggingDecorator.#ctor(System.String,System.String,System.Object)">
            <summary>
            The main constructor for the LoggingDecorator class.  This is called during configuration
            as the rule definition is loaded.
            </summary>
            <param name="name">The name of the decorator???</param>
            <param name="val">True/False - If True logging is enabled for this rule.</param>
            <param name="extraInfo">N/A</param>
        </member>
        <member name="T:Swaf.BizObj.UnknownType">
            <summary>
            This class is only used during startup and maintains information
            about a reference to a type not defined at a point of reference.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.DarSecurityDecorator">
            <summary>
            Addess support for security for DARs by verifying that the current user
            has execute privileges for the provided security resource.
            </summary>
            <remarks>
            By adding the security="" option to the Decorated DAR catalog information
            this decorator will be added.  The value for the security attribute needs
            to be a valid reource name for the current user.  However, the resource
            name can be derived from values passed into the DAR call by using curly
            braces within the resource name.  For example, the following 
            resource name is fixed:
            
            	BizRules.RuleName
            
            The following resource name is dynamic because part of its name
            comes from values within the parameters passed into the DAR:
            
            	BizRule.{RuleName}
            
            The {RuleName} will be replaced by using "RuleName" as a key
            into the INameAddressSupport or IDictionary passed into the DAR to
            do the execute.  The value of the entry will be used to create
            the actual resource name.  For example, if the "RuleName" key
            was associated with the value "ExampleBizRule", the actual 
            resource name checked for the execute privilege would be:
            
            	Bizrule.ExampleBizRule
            
            This dynamic behavior allows the actual privilege to be
            derived from data.
            
            NOTE: There can be only one set of curly braces in the name. 
            This implementation does not check for multiple sets of 
            curly braces.</remarks>
        </member>
        <member name="T:Swaf.GenericDecorator">
            <summary>
            Summary description for GenericDecorator.
            </summary>
        </member>
        <member name="M:Swaf.GenericDecorator.#ctor(System.String,System.String,System.Object)">
            <summary>
            
            </summary>
            <param name="name"></param>
            <param name="val"></param>
            <param name="otherInfo">Needed for the constructor signature in order for this class to
            be created properly through a factory, but is not used by this class.</param>
        </member>
        <member name="M:Swaf.DataAccess.DarSecurityDecorator.#ctor(System.String,System.String,System.Object)">
            <summary>
            Gets ready for the execution of the DAR by getting the resource
            name ready.  If the resource name contains curly braces if will
            preprocess the name in order to execute faster.</summary>
            <param name="name">The name of the decorator. Presumed to
            be security, but doesn't really matter as it isn't used.</param>
            <param name="securityInfo">The resource name to verify the
            execute security privilege on.</param>
            <param name="otherInfo">The XmlElement with the DAR catalog information.</param>
        </member>
        <member name="M:Swaf.DataAccess.DarSecurityDecorator.preExecute(Swaf.Container.INameAddressSupport@)">
            <summary>
            Does an ISecurityPrincipal.assert on the given resource name using the
            Privileges.Execute privilege level.  If the user does not have this
            security privelege the assert will thrown an exception.</summary>
            <param name="info">The DAR execute info passed by the client of the DAR</param>
        </member>
        <member name="M:Swaf.DataAccess.DarSecurityDecorator.postExecute(Swaf.Container.INameAddressSupport@,Swaf.DataAccess.IDataResponse@)">
            <summary>
            Not implemented by this decorator as it isn't needed for security.</summary>
        </member>
        <member name="M:Swaf.DataAccess.DarSecurityDecorator.postFormat(System.Object@)">
            <summary>
            Not implemented by this decorator as it isn't needed for security.</summary>
        </member>
        <member name="P:Swaf.DataAccess.DarSecurityDecorator.IsStandin">
            <summary>
            This is a standin in order to verify security.</summary>
        </member>
        <member name="T:Swaf.Container.XmlCatalogContainerNode">
            <summary>
            Summary description for XmlCatalogContainerNode.
            </summary>
        </member>
        <member name="M:Swaf.Container.XmlCatalogContainerNode.find(System.String,System.Boolean)">
            <summary>
            This method will find the catalog entry and create the object associated with it.
            It is guarenteed to either throw an exception or return a two element array.
            </summary>
            <remarks>
            With the throwException param == true, this method allows code to try and
            create an element, but if it fails no exception will be thrown.  Code can
            now "check" to see if an item exists and not have an exception thrown because
            it can be assumed to be normal operation if the item does not exist.  
            This is strikingly different from the get method which will
            always throw an exception if the item cannot be created or the catalog entry
            cannot be found.  It is up to the calling code to be responsible for the
            ramifications for using this method with throwException == false.  The main
            reason for this method is so that if there is a better then good chance the
            catalog entry wont be there most of the time then this is better then throwing
            an exception each time it is not found.</remarks>
            <param name="nameAddress">The deep name of the catalog entry to find.</param>
            <param name="throwException">If true and an exception occurs a CatalogException
            will be thrown.  If false, the exception info will be thrown away and the return
            value will be what could be returned in the two element array.  If false it is
            guarenteed that this method will always return a two element array.</param>
            <returns>A two element array.  The [0] element is the value from the catalog
            requested. The [1] element is the nameAddress broken down into 
            a NameInfo object.</returns>
        </member>
        <member name="T:Swaf.Container.XmlCatalogContainerNode.NameInfo">
            <summary>
            When breaking down the name for a catalog, the deep name given is broken
            down into pieces that are needed by various places in XmlCatalog.  Also, this
            information can be passed to the constructor the catalog entry class rather then just
            a simple string "catalogName".</summary>
        </member>
        <member name="F:Swaf.Container.XmlCatalogContainerNode.NameInfo.CatalogCacheKey">
            <summary>
            The key to use for storing the catalog entry object in the cache.</summary>
        </member>
        <member name="F:Swaf.Container.XmlCatalogContainerNode.NameInfo.CatalogLocationName">
            <summary>
            The sub directory or other location the catalog came from within the base
            directory or location of the catalog itself.</summary>
        </member>
        <member name="F:Swaf.Container.XmlCatalogContainerNode.NameInfo.CatalogEntryName">
            <summary>
            The actual name of the catalog entry.</summary>
        </member>
        <member name="F:Swaf.Container.XmlCatalogContainerNode.NameInfo.RemainingName">
            <summary>
            Any other names after the catalog entry that should be passed onto the
            entry itself in a get if the object is also an INameAddressSupport.</summary>
        </member>
        <member name="F:Swaf.Container.XmlCatalogContainerNode.NameInfo.EntryFeatureName">
            <summary>
            If the catalog entry was located within a location other then the root
            location of the catalog itself, the feature name is the first "directory"
            of the subdirectory, which should be the name of a feature.
            </summary>
        </member>
        <member name="T:Swaf.Container.NameAddressStack">
            <summary>
            Summary description for NameAddressStack.
            </summary>
        </member>
        <member name="T:Swaf.Container.LinkedList">
            <summary>
            Summary description for LinkedList.
            </summary>
        </member>
        <member name="M:Swaf.Container.LinkedList.remove(Swaf.Container.LinkedList.NodeRef)">
            <summary>
            
            </summary>
            <remarks>This method assumes that nref passed is actually from this list.
            If it is from a different LinkedList, bad things will happen.</remarks>
            <param name="nref"></param>
        </member>
        <member name="T:Swaf.BizRule.BasicExecutor">
            <summary>
            Summary description for BasicExecutor.
            </summary>
        </member>
        <member name="F:Swaf.BizRule.BasicExecutor.s_rules">
            <summary>Maintains a mapping between rule names and XML <c>Element</c> objects that live
            in <c>s_ruleInfo</c>.
            </summary>
        </member>
        <member name="F:Swaf.BizRule.BasicExecutor.s_ruleInfo">
            <summary>This is the base document for the rule infomation nodes read during 
            configuration.
            </summary>
        </member>
        <member name="M:Swaf.BizRule.BasicExecutor.execute(System.String,System.Object[])">
            <summary>
            Execute a single business rule, returning the results after the rule has
            completed.</summary>
            <param name="ruleName">The known rule name for the business rule to be executed
            </param>
            <param name="callParams">The parameter to the business rule as the type needed by the
            rule.  Each rule can take a different .NET type and it is up to the caller
            to know what the called business rule needs for its data.</param>
            <returns>The results of the call</returns>
        </member>
        <member name="M:Swaf.BizRule.BasicExecutor.execute(Swaf.BizRule.IRuleContext,System.String,System.Object[])">
            <summary> Execute a single business rule within the passed in context, returning after
            the rule has completed.</summary>
            <remarks>
            This method is meant to be called by business rules as a way to share context
            with a group of business rules in order to colaborate in a (potentially) 
            parallel fashion in a common context.</remarks>
            <param name="ruleName"></param>
            <param name="context"></param>
            <param name="callParams"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.BizRule.BasicExecutor.executeAsync(System.String,System.Object,System.String,System.Object)">
            <summary>
            Execute a single business rule with a callback object/method that will be 
            called with the results of the rule call when the rule has completed.</summary>
            <remarks>
            This is an asynchronous version of the <c>execute</c> method, allowing the
            client caller to do other things while the rule is executing.
            <p>
            It is possible to pass in <c>null</c> for the callback object and method
            and to use the IRuleGroup object returned to poll for the completion of the
            rule.
            </p></remarks>
            <param name="ruleName"></param>
            <param name="callback"></param>
            <param name="callbackMethod"></param>
            <param name="callParams"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.BizRule.BasicExecutor.execute(System.String[],System.Object[])">
            <summary>
            Executes multiple rules (potentially) in parallel, returning after all the
            rules specified have executed.</summary>
            <remarks>
            The <c>IResults</c> returned from this call will have the same number of
            sub-results in it as the number of rules specified.  It is this <i>multi-rule</i>
            execution that make the <c>RuleManager</c> so powerful.</remarks>
            <param name="ruleNames"></param>
            <param name="callParams"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.BizRule.BasicExecutor.executeAsync(System.String[],System.Object[],System.Object,System.String)">
            <summary>
            Executes multiple business rules with a callback object/method that will be 
            called with the resultswhen all the rules specified have completed.</summary>
            <remarks>
            This is an asynchronous version of the <c>execute</c> method, allowing the
            client caller to do other things while the multiple rules are executing.
            <p>
            It is possible to pass in <c>null</c> for the callback object and method
            and to use the IRuleGroup object returned to poll for the completion of the
            rules.</p></remarks>
            <param name="ruleName"></param>
            <param name="callParams"></param>
            <param name="callback"></param>
            <param name="callbackMethod"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.BizRule.BasicExecutor.getRuleInfo(System.String)">
            <summary>Gets the ICall object based on the specified rule name.</summary>
            <param name="ruleName"></param>
            <returns></returns>
        </member>
        <member name="P:Swaf.BizRule.BasicExecutor.rules">
            <summary>
            This property provides access to the s_rules dictionary.  This should be used rather than direct access to the
            dictionary because this dictionary is instantiated using a "lazy load" paradigm.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.BizObjManager">
            <summary>
            Main class for creating the various types of bizobj instances including bizobj,
            bizobjlist, and bizobjsource.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.BizObjManager.create(System.String)">
            <summary>Creates a BusinessObject of the specified type.
            The created object might have invalid fields (that is, the fields'
            validators might indicate that the fields are invalid), because the
            object is in a conceptually "empty" state.</summary>
            <remarks>
            Postcondition:
            <c>
            BusinessObject x = BusinessObjects.create(type);
            x.type().equals(type);
            </c>
            </remarks>
        </member>
        <member name="M:Swaf.BizObj.BizObjManager.registerPrototype(System.String,Swaf.BizObj.fieldValidator.FieldValidator)">
            <summary>Registers the given <em>Pattern</em> and prototype object in the <c>prototypes_</c> list.
            </summary>
            <returns><c>null</c> on success, or a human-readable description of what went wrong on error.
            
            </returns>
        </member>
        <member name="M:Swaf.BizObj.BizObjManager.parseValidators(System.String)">
            <summary>Parses a string containing zero or more validators, separated by semicolons.
            </summary>
            <param name="validators">The input string containing the zero-or-more validators.
            </param>
            <returns>A FieldValidator that corresponds to the validators in the <c>validators</c> string,
            or null if the string didn't contain any validators.
            @throws ParseError when there was an error while parsing <c>validators</c>.
            
            </returns>
        </member>
        <member name="M:Swaf.BizObj.BizObjManager.createList(System.String)">
            <summary>
            Creates an IBizObjList based on the business object type passed into the method.
            The <c>SourceType</c> defaults to <c>SourceType.BasicSource</c>,  
            no search criteria is used to determine the business objects in the list,
            and no initialization text is specified.
            </summary>
            <param name="objectType">A business object type defined in the application configuration file.</param>
            <returns>A newly created <c>IBizObjList</c>.</returns>
        </member>
        <member name="M:Swaf.BizObj.BizObjManager.createList(Swaf.BizObj.SourceType,System.String)">
            <summary>
            Creates an IBizObjList based on the <c>SourceType</c> and business object type passed into the method.
            No search criteria will be used to determine the business objects in the list, 
            and no initialization text is specified. Use this method to create an <c>IBizObjList</c>
            when the <c>SourceType.BasicSource</c> is not appropriate.
            </summary>
            <param name="srcType">The <c>SourceType</c> to use for the business object list.</param>
            <param name="objectType">A business object type defined in the application configuration file.</param>
            <returns>A newly created <c>IBizObjList</c>.</returns>
        </member>
        <member name="M:Swaf.BizObj.BizObjManager.createList(Swaf.BizObj.SourceType,System.String,System.String,System.String)">
            <summary>
            Creates an IBizObjList based on the specified <c>SourceType</c>, business object type,
            implementation-specfic search criteria, and initialization text.
            </summary>
            <param name="srcType">The <c>SourceType</c> to use for the business object list.</param>
            <param name="sourceInfo">Initialization text used by the data source to get ready to work properly. 
            An XML string that loads into a DOM if the type is SourceType.XmlSource. Can be an empty string.</param>
            <param name="objectType">A business object type defined in the application configuration file.</param>
            <param name="listInfo">Implementation-specfic search criteria that determines which business objects 
            should be included in the list. Can be null if no specific search criteria is necessary.</param>
            <returns>A newly created <c>IBizObjList</c>.</returns>
        </member>
        <member name="T:Swaf.Config.ConfigHandler">
            <summary>
            The parent class for classes that want to participate in the application
            configuration file processing and this class provides set of helper methods
            for working with the XML document.</summary>
            <remarks>
            </remarks>
            <author>mdenman</author>
        </member>
        <member name="M:Swaf.Config.ConfigHandler.executeBefore(Swaf.Config.IConfigElement)">
            <summary>Derived classes must provide a definition for this method.
            This lets them get control at the beginning of a given XML form.
            </summary>
        </member>
        <member name="M:Swaf.Config.ConfigHandler.executeAfter(Swaf.Config.IConfigElement)">
            <summary>Derived classes can optionally override this method.
            This lets them get control at the <em>end</em> of a given XML form.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.BizObjManager.DynamicBizObjRegistrationHandler">
            <summary>
            Configuration handler to configure ICall that will dynamically load bizobj 
            definitions.
            </summary>
        </member>
        <member name="T:Swaf.Container.VersioningXmlCatalogContainerNode">
            <summary>
            This class inherits from the XmlCatalogContainerNode and provides a versioning implementation of an XML Catalog.
            </summary>
        </member>
        <member name="M:Swaf.Container.VersioningXmlCatalogContainerNode.#ctor(System.Text.RegularExpressions.Match,System.Object[])">
            <summary>
            Constructor adds creating a reference to the versioning partner in order to resolve names to versioned names based on context information.
            </summary>
            <param name="mr"></param>
            <param name="extraInfo"></param>
        </member>
        <member name="M:Swaf.Container.VersioningXmlCatalogContainerNode.get(System.String,System.Object[])">
            <summary>
            Overridden Get method provides a versioned get.  If the requested key is not in the cache dictionary,
            the system will look for an exact match in the catalog folder.  If that match is not found, the search
            key is truncated by 1 delimited value and the search is performed again.  This process is repeated until
            either a file is found or the key becomes empty.
            </summary>
            <param name="nameAddress"></param>
            <param name="infoArgs"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Container.VersioningXmlCatalogContainerNode.containsField(System.String)">
            <summary>
            Overridden method to determine whether a requested key exists in this catalog.  This method
            goes directly to the file system to search for the requested key.  If the exact key is not found,
            it uses the versioning algorithm to see if a versioned match is found.
            </summary>
            <param name="nameAddress"></param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Versioning.HashVersioningDictionary">
            <summary>
            This versioining dictionary uses a hash table as its internal storage.  We use a ReaderWriter lock to synchronize
            read and write access to make it safe for use in multi-threaded access.  All methods that pertain to reading or writing
            to either the Source or Cache dictionaries are overridden to provide locking and thread-safety.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.#ctor">
            <summary>
            Overridden Constructor to implement the source and cache dictionaries as Hashtables.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.readFromCache(System.String)">
            <summary>
            Overridden BaseVersionDictionary readFromCache method.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.writeToCache(System.String,System.Object,System.Object)">
            <summary>
            Overridden BaseVersionDictionary writeToCache method.
            </summary>
            <param name="key"></param>
            <param name="value"></param>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.readFromSource(System.String)">
            <summary>
            Overridden BaseVersionDictionary  readFromSource method.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.writeToSource(System.String,System.Object,System.Object)">
            <summary>
            Overridden BaseVersionDictionary  writeToSource method.
            </summary>
            <param name="key"></param>
            <param name="value"></param>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.getEnumerator">
            <summary>
            Overridden BaseVersionDictionary getEnumerator method.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.GetEnumerator">
            <summary>
            Overridden IDictionary GetEnumerator method.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.Remove(System.Object)">
            <summary>
            Overridden IDictionary Remove method.
            </summary>
            <param name="key"></param>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.Contains(System.Object)">
            <summary>
            Overridden IDictionary Contains method.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.Clear">
            <summary>
            Overridden IDictionary Clear method.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.Add(System.Object,System.Object)">
            <summary>
            Overridden IDictionary Add method.
            </summary>
            <param name="key"></param>
            <param name="value"></param>
        </member>
        <member name="M:Swaf.Versioning.HashVersioningDictionary.CopyTo(System.Array,System.Int32)">
            <summary>
            Overridden ICollection CopyTo method.
            </summary>
            <param name="array"></param>
            <param name="index"></param>
        </member>
        <member name="P:Swaf.Versioning.HashVersioningDictionary.Values">
            <summary>
            Overridden IDictionary Values property.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.HashVersioningDictionary.Keys">
            <summary>
            Overridden IDictionary Keys method.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.HashVersioningDictionary.Count">
            <summary>
            Overridden ICollection Count method.
            </summary>
        </member>
        <member name="T:Swaf.SessionApp">
            <summary>
            The light-weight pure C# implementation of only the <c>IApplication</c> interface
            that is only needed in a multi-user hosting environment such as <i>ASP</i> or <i>ASP.NET</i>.
            </summary>
            <remarks>
            Instances of this class are associated one-to-one with "user sessions" in multi-user
            hosting environments.  Framework code that use <i>IApplication</i> should expect
            to be able to use this to work in within the context of a specific user of the
            application.
            <p>
            Instances of this class are obtained by calling the <c>Application.createSessionApp</c>
            method on the main application level <c>Application</c> object.</p></remarks>
        </member>
        <member name="M:Swaf.SessionApp.setCurrentCulture(System.String)">
            <summary>
            Sets the current culture for this application instance by name.
            </summary>
            <param name="name"></param>
        </member>
        <member name="P:Swaf.SessionApp.culture">
            <summary>
            Gets/Sets the currently configured culture for this application instance
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "T:Swaf.Scheduler.ScheduleManager" -->
        <member name="T:Swaf.Resource.WebRequestCreator">
            <summary>
            Summary description for WebRequestCreator.
            </summary>
        </member>
        <member name="T:Swaf.Messaging.MessagingRules">
            <summary>
            Summary description for MessagingRules.
            </summary>
        </member>
        <member name="M:Swaf.Messaging.MessagingRules.CsfMessagingMonitorQueue(Swaf.IApplication,Swaf.BizRule.IRuleContext,Swaf.Messaging.QueueConnectionInfo,Swaf.Call.ICall,System.String)">
            <summary>
            This is a 
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <param name="info"></param>
            <param name="observer"></param>
            <param name="schedulingFrequency"></param>
        </member>
        <member name="T:Swaf.DataAccess.SqlServerHelper">
            <summary>
            Summary description for SqlServerHelper.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.IAdoNetHelper">
            <summary>
            Summary description for IAdoNetHelper.
            </summary>
        </member>
        <member name="T:Swaf.Container.ReadOnlyDictionary">
            <summary>
            Summary description for ReadOnlyDictionary.
            </summary>
        </member>
        <member name="T:Swaf.Container.NameAddressSupportDictionaryWrapper">
            <summary>
            Summary description for NameAddressSupportDictionaryWrapper.
            </summary>
        </member>
        <member name="T:Swaf.Config.ConfigManager">
            <summary>
            Provides support for processing an XML document for application configuration
            where registered <c>IConfigHandler</c> objects are used to process the
            various contents of the document.</summary>
        </member>
        <member name="T:Swaf.Config.ConfigManager.CompositeHandler">
            <summary>Uses the <em>Composite Design Pattern</em> to compose <c>IConfigHandler</c> objects.
            </summary>
        </member>
        <member name="T:Swaf.Cmn">
            <summary>
            A grab bag of static functions that help get simple yet tedious tasks done.</summary>
        </member>
        <member name="M:Swaf.Cmn.getCaller(System.Int32)">
            <summary>
            This method gets the information about the calling method, file and line number.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.Cmn.oldWriteLog(System.String)">
            <summary>Writes the indicated message to the log file.
            <p>Sample usage:
            <pre>
            Application.currentApp.Log.println("blah blah");
            </pre>
            </p>
            </summary>
        </member>
        <member name="F:Swaf.Cmn.writeLogTimestamp_">
            <summary>The timestamp as it appeared the last time <c>Application.currentApp.Log.println()</c> was called.
            If <c>Application.currentApp.Log.println()</c> has not yet been called, this will be <c>null</c>.
            </summary>
        </member>
        <member name="M:Swaf.Cmn.timestamp">
            <summary>Returns a short string representing the current date and time.
            </summary>
        </member>
        <member name="M:Swaf.Cmn.callMethod(System.Object,System.String,System.Type[],System.Object[])">
            <summary>Calls the method named <c>name</c> on the object <c>onThis</c>.
            Passes the array of <c>paramValues</c> (which are of the classes
            found in the array <c>paramTypes</c>) to the method.
            <p>This can be used to call both non-static methods (in which case
            the <c>onThis</c> parameter will become the actual <c>this</c>
            object within the method) or static methods (in which case <c>onThis</c>
            is merely used to decide which class to use).</p>
            </summary>
            <returns>the method's return value.
            
            </returns>
        </member>
        <member name="M:Swaf.Cmn.setProperties(System.Object,System.String[],System.Object[])">
            <summary>
            Static helper method to set a number of properties on a provided object in a single call.
            </summary>
            <param name="onThis">The object on which to call the specified property set</param>
            <param name="names">String array of names of properties to set</param>
            <param name="vals">Object array of property values.  One-to-one with names</param>
        </member>
        <member name="M:Swaf.Cmn.setProperties(System.Object,System.Collections.IList)">
            <summary>
            Static helper method to set a number of properties on a provided object in a single call.
            </summary>
            <param name="onThis">The object on which to call the specified property set</param>
            <param name="list">IList containing IProperty objects</param>
        </member>
        <member name="M:Swaf.Cmn.callCtor(System.String,System.Type[],System.Object[])">
            <summary>Calls the constructor of the class named <c>classname</c>.
            Passes the array of <c>paramValues</c> (which are of the classes
            found in the array <c>paramTypes</c>) to the method.
            </summary>
            <returns>the constructed object.
            
            </returns>
        </member>
        <member name="M:Swaf.Cmn.classExists(System.String)">
            <summary>Returns true if-and-only-if 'classname' exists as a valid .NET class.
            </summary>
            <param name="classname">the fully qualified name of the class.  e.g., "System.String" (<em>not</em> "String").
            
            </param>
        </member>
        <member name="M:Swaf.Cmn.join(System.String,System.Object[])">
            <summary>This joins the array of elements 'a' using the separator 's' between each one.
            It's almost the opposite of <c>PatternUsage.split(...)</c>.</summary>
        </member>
        <member name="M:Swaf.Cmn.join(System.String,System.Collections.IEnumerator)">
            <summary>This joins the elements of Collection 'c' using the separator 's' between each one.
            It's almost the opposite of <c>PatternUsage.split(...)</c>.</summary>
        </member>
        <member name="M:Swaf.Cmn.replaceOneLiteral(System.String,System.String,System.String)">
            <summary>If <c>target</c> appears within <c>s</c>, replaces the first such occurance with <c>replacement</c>.
            If <c>target</c> does not appear within <c>s</c>, returns <c>s</c> unchanged.
            </summary>
        </member>
        <member name="M:Swaf.Cmn.internalError(System.String)">
            <summary>Call this when there is an unexpected internal error and you wish to get
            some debugging information about the specifics.  During development, this
            kills the application and puts out a stack trace showing where you were.
            During production we may change the implementation of this so it's not so
            drastic.
            </summary>
        </member>
        <member name="M:Swaf.Cmn.repeat(System.String,System.Int32)">
            <summary>Returns a String that contains 'count' copies of the String 's'.
            </summary>
            <param name="s">the string to be duplicated.
            </param>
            <param name="count">the number of copies of 's' to include in the result.
            
            </param>
        </member>
        <member name="M:Swaf.Cmn.tokenizeOnFirstChar(System.String)">
            <summary>Tokenizes the String using the first character as a delimiter.
            </summary>
            <param name="s">the String to be tokenized.
            Must not be <c>null</c>.
            Must not be the empty string, <c>""</c>.
            </param>
            <returns>the IList of tokens (not including the empty token before the first character).
            E.g., if 's' is "|abc|def|pqr", this will return a list containg ["abc", "def", "pqr"].
            E.g., if 's' is "|||" this will return a list containing ["", "", ""].
            
            </returns>
        </member>
        <member name="M:Swaf.Cmn.copyArray(System.Object,System.Int32)">
            <summary>Allocates a new array that is <c>newLength</c> elements, and copies whatever fits from <c>origArray</c>.
            If we're creating a shorter copy (if <c>newLength &lt; origArray.length</c>),
            copies only <c>newLength</c> elements.
            If we're creating a longer copy (if <c>newLength &gt; origArray.length</c>),
            copies only <c>origArray.length</c> elements.
            </summary>
            <param name="origArray">the original array.
            Must be an array.
            </param>
            <param name="newLength">the desired length of the resulting array.
            Must not be negative.
            </param>
            <returns>the resulting array.
            Returned array's length will be <c>newLength</c>.
            
            </returns>
        </member>
        <member name="M:Swaf.Cmn.appendToArray(System.Array,System.Object)">
            <summary>Allocates a new array that is one element longer than <c>origArray</c>,
            and adds the specified element to the end.
            </summary>
            <param name="origArray">the original array.
            Must be an array.
            </param>
            <param name="elem">the element to be added to the newly allocated array.
            Must be type-compatible with the type of the array
            (e.g., if <c>origArray</c> is an array of <c>Apple</c>,
            <c>elem</c> must be assignment compatible to an <c>Apple</c>).
            </param>
            <returns>the resulting array.
            Returned array's length will be <c>origArray.length + 1</c>.
            The first <c>origArray.length</c> elements will be <c>==</c> to those in <c>origArray</c>.
            The last element will be <c>==</c> to <c>elem</c>.
            </returns>
        </member>
        <member name="F:Swaf.Cmn.tokenizeOnFirstChar_">
            <summary>
            This is a cache used exclusively by <c>tokenizeOnFirstChar()</c>.</summary>
        </member>
        <member name="F:Swaf.Cmn.logFile_">
            <summary>
            The PrintStream that is being used as the log file.</summary>
        </member>
        <member name="P:Swaf.Cmn.logFile">
            <summary>Returns the PrintStream that is being used as the log file.</summary>
            <remarks>
            <p>If all you want to do is write something to this file, you're usually
            better off simply using <c>writeLog()</c> method (since that
            automatically handles timestamps and other things).</p>
            <p>Sample usage:
            <pre>
            Cmn.logFile().WriteLine("blah blah");  // not recommended
            Application.currentApp.Log.println("blah blah");  // recommended
            </pre>
            </p>
            <p>Here's a reasonable way to use this method:
            <pre>
            try {
            // ...
            }
            catch (Exception e) {
            Application.currentApp.Log.println("Unexpected exception: " + e);
            e.printStackTrace(Cmn.logFile());
            }
            </pre></p>
            </remarks>
        </member>
        <member name="T:Swaf.Cmn.PerfMon">
            <summary>
            Helper class for incrementing and decrementing performance counters.
            </summary>
        </member>
        <member name="M:Swaf.Cmn.PerfMon.getCounter(System.String)">
            <summary>
            Returns a reference to a performance counter object
            </summary>
            <param name="counter"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Cmn.PerfMon.incrementCounter(System.String)">
            <summary>
            Increments a performance counter by 1
            </summary>
            <param name="counter"></param>
        </member>
        <member name="M:Swaf.Cmn.PerfMon.incrementCounter(System.String,System.Int64)">
            <summary>
            Increments a performance counter by specified value
            </summary>
            <param name="counter"></param>
            <param name="incrementValue"></param>
        </member>
        <member name="M:Swaf.Cmn.PerfMon.decrementCounter(System.String)">
            <summary>
            Decrements a performance counter by 1
            </summary>
            <param name="counter"></param>
        </member>
        <member name="M:Swaf.Cmn.PerfMon.decrementCounter(System.String,System.Int64)">
            <summary>
            Decrements a performance counter by a specified value
            </summary>
            <param name="counter"></param>
            <param name="decrementValue"></param>
        </member>
        <member name="T:Swaf.Cmn.ReflectionException">
            <summary>This is the exception that is thrown when something goes wrong within
            <c>Cmn.callMethod()</c> and/or <c>Cmn.callCtor()</c>.</summary>
            <remarks>
            The idea is to "contain" the real <c>Exception</c> that was thrown during
            those routines, then provide a way for the caller to extract it again.
            This simplifies the caller's code -- it needs only one <c>catch</c> handler.
            </remarks>
        </member>
        <member name="M:Swaf.Cmn.ReflectionException.exception">
            <summary>Returns the exception that was actually thrown by the <c>System.Reflection</c> primitives.
            </summary>
        </member>
        <member name="M:Swaf.Cmn.ReflectionException.className">
            <summary>Returns the name of the class that contains the method or constructor that was called.
            For example, if calling a method on a <c>Integer</c> object, this would return <c>System.Int32</c>.
            </summary>
        </member>
        <member name="M:Swaf.Cmn.ReflectionException.signature">
            <summary>Returns the signature of the method or constructor that was called.
            For example, if calling the <c>Parse(String)</c> (static) method
            associated with class <c>Int32</c>, this would return something
            like <c>System.Int32.Parse(System.String)</c>.</summary>
            <remarks>
            Note that the specifics of the returned string are not guaranteed,
            since if an exception occurred early enough in the process, the
            signature may be built by hand.
            </remarks>
        </member>
        <member name="T:Swaf.Call.BaseCompositeCall">
            <summary>
            Base class for rules that contain other rules.
            </summary>
        </member>
        <member name="T:Swaf.Call.BaseCall">
            <summary>
            Summary description for BaseCall.
            </summary>
        </member>
        <member name="M:Swaf.Call.BaseCompositeCall.internalCallMember.makeCall(System.Boolean@,System.Exception@,System.Object[])">
            <summary>
            Tries to call the contained ICall instance.  If the call fails with a CallException
            the attempt counter is incremented until it reaches the max tries, then the instance
            is disabled for a fixed amount of time.
            </summary>
            <param name="success"></param>
            <param name="p"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Call.ManagementRules.addRemoteRuleCall(Swaf.IApplication,Swaf.BizRule.IRuleContext,System.String,Swaf.BizObj.IBizObj)">
            <summary>
            Dynamically defines a remote rule definition.
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <param name="ruleName"></param>
            <param name="ruleDef">IBizObj instance of either CallInfo or CompositeCallWorker</param>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.ThreadedCompositeMonitor">
            <summary>
            Summary description for ThreadedCompositeMonitor.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.xml.XmlBaseBusinessObject">
            <summary>
            Implements the abstract methods of <c>BusinessObjectBase</c> and exposes one
            new abstract method <c>xmlElement</c> that this class uses as its data store
            for the properties of the given business object.</summary>
        </member>
        <member name="T:Swaf.BizObj.BaseBizObj">
            <summary>
            This class provides the core implementation of the IBizObj interface and also
            implements the ICustomTypeDescriptor interface in order to allow a bizobj to be
            bound to with .NET data binding.  This class provides a set of abstract methods
            that any child must implement in order to inherit from this class.
            
            This is the class that provides support for decorators, deep name addresses, and 
            other bizobj technologies.  Child classes are expected to provide the storage for 
            values being put into the bizobj and to maintain the various system values such as
            dirty, validated, isNew and isDeleted because these things require storage to manage
            their state.  This class is intended to be usable by different implementations that
            store thier values different then just in memory like FullBizObj.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.#ctor(Swaf.BizObj.IBizObjDefinition)">
            <summary>
            creates a new empty bizobj from the given definition.  The bizobj definition
            can be null, but if so the bizobj cannot be used until the setType is called.
            The intention of that is to allow bizobjs to be created before their type is fully
            known and then changed during startup.
            </summary>
            <param name="bizObjType">The bizobj type to be used by this instance.</param>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.ToString">
            <summary>
            Provides the XML serialization of this instance rather then the default class name.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.isKindOf(System.String)">
            <see>IBizObj.isKindOf</see>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.isFieldSet(System.String)">
            <see>IBizObj.isFieldSet</see>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.unsetField(System.String)">
            <see>IBizObj.unsetField</see>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.get(System.String,System.Object[])">
            <summary>
            Will get a value from the bizobj.  Supports deep names and is the main source of
            processing field decorators when getting a decorated value.  If a deep name is
            used on a field that is a bizobj type that is also decorated, the bizobj will be 
            processed through the decorators before continuing on with deep name support.  This
            works wells when a field of type bizobj is also decorated with something that
            changes the type completely.  For example, the encryption decorator will change
            the actual type from bizobj to string.  In order to properly support decorating
            a bizobj with a decorator like that, this method needs to "un-encrypt" the bizobj.
            
            This method completely handles deep name support for its children.  If a deep
            name is used, it will get the first name value from the child and then continue 
            with the deep name processing.
            </summary>
            <seealso cref="!:IBizObj.get"/>
            <param name="name"></param>
            <param name="p"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.getItem(System.String,System.Object[])">
            <summary>
            A helper method that passes control to the main get.
            </summary>
            <seealso cref="M:Swaf.BizObj.IBizObj.getItem(System.String,System.Object[])"/>
            <seealso cref="M:Swaf.BizObj.BaseBizObj.get(System.String,System.Object[])"/>
            <param name="name"></param>
            <param name="p"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.put(System.String,System.Object)">
            <summary>
            Will put a value into the bizobj.  Supports deep name addressing and decorators
            during the put operation.  This method
            
            This method completely handles deep name support for its children.  If a deep
            name is used, it will get the first name value from the child and then continue 
            with the deep name processing.  If the first name is also decoratorated, it will 
            also put back the main value so that the changes made deeper within it will be
            persisted.  For example, if the field is a bizobj type, decorated with the encryption
            decorator, and one of its fields are being changed, the child bizobj must be put
            back into this bizobj through its decorators in order to re-encrypt the bizobj and have
            the changes stay.  Without this, the encryption decorator (or other decorators that
            change the base type from bizobj to something else) would not be able to be applied
            to a bizobj or bizobjlist field type.
            </summary>
            <param name="name">the name of the field to change.  Supports deep names</param>
            <param name="val">the value to put in the field.</param>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.putValidated(System.String,System.Object)">
            <summary>
            Validates the value given against the validators specified for the field
            and if a valid value, does a standard put with the validated value.
            </summary>
            <seealso cref="M:Swaf.BizObj.BaseBizObj.get(System.String,System.Object[])"/>
            <param name="name">The field name to put the value into. Supports deep names</param>
            <param name="newValue">The value to validate and put in the bizobj</param>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.validate">
            <summary>
            Iterates through all of the fields in this bizobj and if it is marked as not being validated
            will validate it.  Any invalid fields will be added to a list and returned.
            </summary>
            <seealso cref="M:Swaf.BizObj.IBizObj.validate"/>
            <returns>The list of invalid fields and messages</returns>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.isDirty">
            <summary>
            If any field in this bizobj is dirty then this will return true, else false.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.isDirty(System.String)">
            <summary>
            If the given field is dirty returns true, else false.  This method supports deep names.
            </summary>
            <seealso cref="M:Swaf.BizObj.IBizObj.isDirty"/>
            <param name="name">The field name to check is dirty.</param>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.clearDirtyFlags">
            <summary>
            Resets all the dirty flags set so that no field is marked as being dirty.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.validateField(System.String,System.Object)">
            <summary>
            Checks to see if the given value is valid for the field named.  This method
            supports deep names as long as the final element in the deep name support is
            also an IBizObj.
            </summary>
            <param name="name">The name of the field to validate the new value against.</param>
            <param name="newValue">The value to validate</param>
            <returns>If a good value, returns null, otherwise it returns an exception
            object that represents the reason why the value is not valid.</returns>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.swap(Swaf.BizObj.IBizObj)">
            <see>IBizObj.swap</see>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.getXml(System.String,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Xml.XmlTextWriter)">
            <summary>
            Will return XML that represents this bizobj, and will drill down into child bizobj and bizobjlists to complete
            the operation.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.validateAndConvert(Swaf.BizObj.BizObjField,System.Object)">
            <summary>
            Validates that <c>value</c> is appropriate for field number <c>index</c>.
            If it is valid, converts the <c>value</c> as needed and returns the converted value.
            If it is invalid, returns a human-readable error message <c>String</c> describing what went wrong.
            See <c>put()</c> for exactly what is and what is not considered "valid."
            </summary>
            <param name="index">the index of the field that is being validated/converted.
            E.g., <c>this.info_.fields[index]</c> is the info about the field.
            </param>
            <param name="newValue">the value to be validated.</param>
            <returns>
            A two-element array: the first element is the human-readable error message
            describing what went wrong (or <c>null</c> on success), and the second
            element is the (possibly) converted <c>value</c>.
            </returns>
        </member>
        <member name="M:Swaf.BizObj.BaseBizObj.putSingleNameProcessed(Swaf.BizObj.BizObjField,System.Object,System.String)">
            <summary>
            This method will attempt to put the value into the field by doing decoration first and then converting the
            results into the expected field type.
            </summary>
            <param name="fld"></param>
            <param name="val"></param>
        </member>
        <member name="P:Swaf.BizObj.BaseBizObj.BizObjFieldFactory">
            <summary>
            The factory for bizobj fields.  This is a shortcut for getting access to the factory and
            the actual instance is pulled from the application factories on first use.
            </summary>
        </member>
        <member name="P:Swaf.BizObj.BaseBizObj.type">
            <see>IBizObj.type</see>
        </member>
        <member name="P:Swaf.BizObj.BaseBizObj.KeyValue">
            <summary>
            Will return the value of the key for this bizobj.  Most bizobj definitions
            will have one or more fields used as keys which indicate uniqueness amongst a 
            collection of like bizobjs.  If the key is a single field the value returned
            will the be native type of the key.  If the key is a collection of fields, each
            field's value will be turned to a string (with ToString method) and concatonated.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.xml.XmlBaseBusinessObject.#ctor(Swaf.BizObj.IBizObjDefinition)">
            <summary>Creates a new instance of XmlBaseBusinessObject</summary>
        </member>
        <member name="P:Swaf.BizObj.xml.XmlBaseBusinessObject.xmlElement">
            <summary> Child classes should implement this method to provide access to 
            the XML element that this object is associated with.  Many of the 
            other methods in this class use this method to obtain the element in order
            to work with the base data for the business object.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "P:Swaf.BizObj.xml.XmlBaseBusinessObject.isDeleted" -->
        <member name="T:Swaf.BizObj.Virtual.VirtualBizObjList">
            <summary>
            Summary description for VirtualBizObjList.
            </summary>
        </member>
        <member name="T:Swaf.Security.ResourceBase">
            <summary>
            The ResourceBase class is the base class implementation of the IResource interface.  
            All other resource classes should inherit from this class and override any necessary 
            properties or methods.
            </summary>
        </member>
        <member name="M:Swaf.Security.ResourceBase.#ctor(System.String)">
            <summary>
            Basic constructor to create a new named resource.  The effectpriveprivileges for this 
            new resource will be defaulted to Privileges.None.
            </summary>
            <param name="name">Name of this resource</param>
        </member>
        <member name="M:Swaf.Security.ResourceBase.#ctor(System.String,Swaf.Security.Privileges)">
            <summary>
            Basic constructor to create a new named resource with a predefined effectivePriviliges.
            </summary>
            <param name="name">Name of this resource</param>
            <param name="effPrivilege">Preset value for effectivePrivilege</param>
        </member>
        <member name="M:Swaf.Security.ResourceBase.#ctor(System.Xml.XmlNode)">
            <summary>
            Creates a new resource instance using an XmlNode containing information about the resource.  
            The XmlNode should at a minimum contain a name and effectivePrivilege attribute.
            </summary>
            <param name="ele">XmlConfiguration node containing serialized Resource information</param>
        </member>
        <member name="M:Swaf.Security.ResourceBase.#ctor(Swaf.Container.INameAddressSupport)">
            <summary>
            Creates a new resource instance using an INameAddressSupport instance (normally BizObj).  
            This constructor is provided for a shortcut to instancing resources in the rule 
            associated with a resourceset and is used by the populateResourcesFromList method 
            of the ResourceSet class.
            </summary>
            <param name="source">INameAddressSupport instance containig information about this resource</param>
        </member>
        <member name="M:Swaf.Security.ResourceBase.clone">
            <summary>
            <see cref="M:Swaf.Security.IResource.clone"/>
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceBase.getAttributeValue(System.Xml.XmlNode,System.String,System.String)">
            <summary>
            Helper method for retrieving an Xml Node attribute value, providing a default.
            </summary>
            <param name="ele">Node containing desired attribute</param>
            <param name="name">Name of attribute being requested</param>
            <param name="defaultVal">Deafult value to return if attribute is not found</param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceBase.newInstance(System.String,Swaf.Security.Privileges)">
            <summary>
            Internal method used by base class to create a new instance of this class for cloning.
            </summary>
            <param name="name"></param>
            <param name="effPrivilege"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceBase.containsField(System.String)">
            <summary>
            <see cref="!:ISecurityPrincipal.containsField"/>
            </summary>
            <param name="nameAddress"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceBase.put(System.String,System.Object,System.Object)">
            <summary>
            <see cref="!:ISecurityPrincipal.put"/>
            </summary>
            <param name="nameAddress"></param>
            <param name="val"></param>
            <param name="extraInfo"></param>
        </member>
        <member name="M:Swaf.Security.ResourceBase.put(System.String,System.Object)">
            <summary>
            <see cref="!:ISecurityPrincipal.put"/>
            </summary>
            <param name="nameAddress"></param>
            <param name="val"></param>
        </member>
        <member name="M:Swaf.Security.ResourceBase.get(System.String)">
            <summary>
            Returns the actual contained resource rather than the privilege.
            </summary>
            <param name="nameAddress"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceBase.get(System.String,System.Object)">
            <summary>
            Returns the actual contained resource rather than the privilege.
            </summary>
            <param name="nameAddress"></param>
            <param name="oneArg"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceBase.get(System.String,System.Object[])">
            <summary>
            Returns the actual contained resource rather than the privilege.
            </summary>
            <param name="nameAddress"></param>
            <param name="infoArgs"></param>
            <returns></returns>
        </member>
        <member name="P:Swaf.Security.ResourceBase.resources">
            <summary>
            <see cref="P:Swaf.Security.IResource.resources"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceBase.bizObj">
            <summary>
            Returns an instance of the bizobj 
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceBase.effectivePrivilege">
            <summary>
            <see cref="P:Swaf.Security.IResource.effectivePrivilege"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceBase.name">
            <summary>
            <see cref="P:Swaf.Security.IResource.name"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceBase.isGetOnly">
            <summary>
            <see cref="!:ISecurityPrincipal.isGetOnly"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceBase.SerializationSupport">
            <summary>
            <see cref="!:ISecurityPrincipal.SerializationSupport"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceBase.Xml">
            <summary>
            <see cref="P:Swaf.Container.INameAddressSupport.Xml"/>
            </summary>
        </member>
        <member name="T:Swaf.Script.VsaScriptEnvironment">
            <summary>
            Summary description for VsaScriptEnvironment.
            </summary>
        </member>
        <member name="T:Swaf.Script.ScriptManager">
            <summary>
            Provides support for any ActiveX scripting language installed in the running environment.  
            Offers ability to load scripts, create script objects, and call script functions for multiple
            scripting languages simultaniously.</summary>
        </member>
        <member name="T:Swaf.Gui.ActionParamBizProc">
            <summary>
            The UI controller that manages the configuration of a parameter to be passed into an
            action of a seperate bizproc.
            </summary>
        </member>
        <member name="M:Swaf.DataAccess.BasicConnectionItem.closeOnForceClose">
            <summary>
            Allows the creator of this object to control when the connection is really closed, overriding
            the Normal behavior of the close() method.  Once this method is called, the adonet connection isn't 
            really closed until the <c>forceClose</c> method is called.
            </summary>
            <remarks>The primary user of this set of methods is the transaction support code which waits to close
            all connections in a transaction until the all participants in the transaction are done with it. </remarks>
        </member>
        <member name="M:Swaf.DataAccess.BasicConnectionItem.forceClose">
            <summary>
            Forces the close of the connection regardless of the reference state.  This should only
            be used in conjunction with the  <c>closeOnForceClose</c> method to control the adonet
            connection lifetime.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.AdoNetBizObjFormatter">
            <summary>
            Summary description for AdoNetBizObjFormatter.
            </summary>
        </member>
        <member name="F:Swaf.DataAccess.AdoNetBizObjFormatter.BizObjField.m_extraInfo">
            <summary>
            Used as the extraInfo parameter to IBizObj.put(...) when populating the bizobj
            with data from the resultset.  This allows decorated values stored in the database
            to be pushed into the bizobj properly.  As of Aug-04 the only bizobj decorator
            specifically supported is 'encrypt'.
            </summary>
        </member>
        <member name="T:Swaf.Container.BTreeDictionary">
            <summary>
            Summary description for BTreeDictionary.
            </summary>
        </member>
        <member name="P:Swaf.Container.BTreeDictionaryEnumerator.Entry">
            <summary>
            Creates new DictionaryEntry object each time this is called.  Use
            Key and Value properties instead of this.
            </summary>
        </member>
        <member name="T:Swaf.ClassFactory">
            <summary> Manages a map of unique names and regular expressions to fully qualified .NET class names and provides
            a factory method (<c>createFrom</c>) to create instances of the class.</summary>
            <remarks>ClassFactory is an essential class that is used by many different parts of the framework.  It provides a 
            single implementation of the class factory design pattern that can be used for any set of .NET classes.  No
            special requirements exist for the classes defined in the ClassFactory, other then needing to implement:
            <list>
            <item>Public constructor with parameters matching those being passed in to a call to <c>create</c>.</item>
            <item>A public static method called parse that takes a string and calls to <c>create</c> have only
            a string being passed in.</item>
            <item>A sample object is passed in that implements the <c>ICloneable</c> interface.  When calling <c>create</c>
            with no parameters, the <c>ICloneable.Clone</c> method is called on the sample passed in to <c>add</c>.
            When using this option, the class factory is actually implementing the <term>Prototype design pattern</term>.</item>
            </list>
            <p>Use the <c>add</c> method for each name or regular expression pattern to be used to create objects
            from the factory. Either the direct <c>ClassFactory</c> class can be used to create instances, or a 
            create only factory can be used by calling the <c>CreateOnlyFactory</c> method, which returns an
            instance of <c>IClassFactory</c> that only exposes create type methods.</p>
            <p>The framework's <c>Application</c> class has a <c>factories</c> property that is uses to expose
            a map of different class factories defined in the application configuration file.</p>
            </remarks>
            <author>matthewd</author>
        </member>
        <member name="M:Swaf.ClassFactory.#ctor(System.String)">
            <summary>Creates a new instance of ClassFactory 
            </summary>
        </member>
        <member name="M:Swaf.ClassFactory.add(System.String,System.String,System.Object,System.Boolean,System.String)">
            <summary>Adds a record to the pseudo-database that holds info about a .NET class
            that will be used to implement the field values.
            </summary>
            <param name="fullname">the fully-qualified name of the .NET class (e.g., <c>"System.String"</c>).
            Must not be <c>null</c>.
            </param>
            <param name="nickname">the nickname of the .NET class (e.g., <c>"String"</c>).
            If <c>null</c>, the last component of the <c>fullname</c> is used as the nickname.
            E.g., for fullname <c>"System.String"</c>, nickname would be <c>"String"</c>.
            If provided, must match the pattern <c>"{identifier}"</c>.
            </param>
            <param name="ctorparam">the parameter to be passed to constructor of the .NET class to create a sample object.
            If <c>null</c>, the default ctor is used; if non-<c>null</c>, the parameter is
            passed to the single-parameter ctor.
            </param>
            <param name="mutable"><c>True</c> if the .NET class has public methods that 
            mutate the object's state. (Note: this is used to make <c>BusinessObject.clone()</c> a lot more efficient.)
            </param>
            <param name="parsable"><c>True</c> if the class supports a static <c>Parse</c> method that
            takes a single string param.  Many of the fundamental .NET framework classes support such a method.</param>
            <returns><c>null</c> on success; otherwise returns a human-readable error message
            that describes what went wrong.
            </returns>
        </member>
        <member name="T:Swaf.DotNetClassInfo">
            <summary>Holds relevant information about a field's underlying .NET class.
            </summary>
        </member>
        <member name="F:Swaf.DotNetClassInfo.m_fullname">
            <summary><c>this.fullname</c> is the fully qualified name of the .NET class described by this <c>DotNetClassInfo</c>.
            Example: <c>"System.String"</c>.
            </summary>
        </member>
        <member name="F:Swaf.DotNetClassInfo.m_nickname">
            <summary><c>this.nickname</c> is the nickname of the .NET class described by this <c>DotNetClassInfo</c>.
            Example: <c>"String"</c>.
            </summary>
        </member>
        <member name="F:Swaf.DotNetClassInfo.m_defaultValue">
            <summary><c>this.defaultValue</c> is a sample object of the .NET class described by this <c>DotNetClassInfo</c>.
            Example: if <c>this.fullname</c> is <c>"String"</c>, <c>this.defaultValue</c> might be <c>""</c>.
            </summary>
        </member>
        <member name="P:Swaf.DotNetClassInfo.cloneable">
            <summary><c>this.cloneable</c> is <c>true</c> if and only if the class described by this <c>DotNetClassInfo</c> has
            a <c>clone()</c> method that can be called via <c>Cmn.callMethod(...)</c>.
            This is conceptually similar to saying <c>if (this.sampleObject() implements Cloneable) ...</c>,
            but saying <c>if (this.cloneable) ...</c> is more practical (there might be a class
            that has a public <c>clone()</c> method yet forgets to say <c>implements Cloneable</c>).
            </summary>
        </member>
        <member name="P:Swaf.DotNetClassInfo.mutable">
            <summary>
            <c>this.mutable</c> is <c>true</c> if and only if the objects of the .NET class described by
            this <c>DotNetClassInfo</c> are mutable.</summary>
            <remarks>
            <p>For example, .NET's <c>String</c> class produces objects that are
            immutable: it is impossible to modify a <c>String</c> object after it is
            constructed (you can change your <c>String</c> <em>pointer</em> so it points
            at a different <c>String</c> object, but you cannot modify the
            <c>String</c> <em>object</em>).
            </p><p>
            This information enables an important performance improvement on
            <c>BusinessObject.clone()</c> and <c>BusinessObjects.create()</c>.
            It turns out that most small fields (such as strings and numbers) are
            logically the exclusive property of their containing <c>BusinessObject</c>,
            meaning logically we ought to create a fresh field object every time
            their containing <c>BusinessObject</c> is created and/or cloned (if
            two different people have the same identical name, for example there
            could be aliasing problems if one of them changes their name).
            However it also turns out that most small fields (such as strings
            and numbers) are immutable, meaning it's totally unnecessary to create
            a fresh field object: the two <c>BusinessObjects</c> can alias the
            same identical field object since neither can mutate the field object.
            </p><p>
            So <c>BusinessObject.create()</c> and <c>BusinessObject.clone()</c>
            never deep-copy a field object of an immutable type, which substantially
            improves performance.</p></remarks>
        </member>
        <member name="T:Swaf.Call.RuleMgrCall">
            <summary>
            Summary description for RuleMgrCall.
            </summary>
        </member>
        <member name="T:Swaf.Call.ProtocolEnum">
            <summary>
            The supported protocols
            </summary>
        </member>
        <member name="T:Swaf.Call.DynamicWebServiceCall">
            <summary>
            Exposes the ability to invoke Web Services dynamically without 
            having to generate a client side proxy class
            </summary>
        </member>
        <member name="T:Swaf.DynamicCall">
            <summary>
            Allows calls to be make on Object types with a method name as a string, and
            provides caching of the reflection objects needed to make a call on a method
            to help improve performance.</summary>
            <author>mdenman</author>
        </member>
        <member name="M:Swaf.DynamicCall.#ctor(System.Object,System.String)">
            <summary>Creates a new instance of DynamicCall</summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.#ctor(System.String)">
            <summary>
            Constructor taking the WSDL Location
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.#ctor(System.String,System.String)">
            <summary>
            Constructor taking the WSDL Location and the Method Name
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.#ctor(System.String,System.String,System.Object[])">
            <summary>
            Constructor taking the WSDL Location, Method Name, and Method Params
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.GetWsdl(System.String)">
            <summary>
            Get the Wsdl for the source
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.GetWsdlFromUri(System.String)">
            <summary>
            Get the wsdl from the uri
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.GetWsdlFromFile(System.String)">
            <summary>
            Get the wsdl from a file
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.BuildAssemblyFromWsdl(System.String)">
            <summary>
            Generate assembly from the supplied wsdl
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.CreateInstance(System.String)">
            <summary>
            Create a instance of the generated assembly
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.RenameTempAssembly(System.String)">
            <summary>
            Rename the temp assembly if it is being persisted to disk
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.ResetInternalState">
            <summary>
            Reset the state
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.BuildProxy">
            <summary>
            Build the proxy for the service
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.CheckCache">
            <summary>
            Check to see if the dll file for the assembly exists on the disk
            and should be used instead of generating a new one
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.CheckForImports(System.String)">
            <summary>
            Check for optional imports in the root WSDL
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.InjectExtension(System.Type)">
            <summary>
            Inject SOAP extensions in (client side) ASMX pipeline
            </summary>
        </member>
        <member name="M:Swaf.Call.DynamicWebServiceCall.GetMd5Sum(System.String)">
            <summary>
            Create a hash from wsdl to be used in file name
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.Url">
            <summary>
            Property to get and set the URL
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.WSDL">
            <summary>
            Property to get and set the WSDL
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.TypeName">
            <summary>
            Property to get and set the Type Name
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.MethodName">
            <summary>
            Property to get and set the Method Name
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.ProtocolName">
            <summary>
            Property to get and set the Protocol Name
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.MethodParams">
            <summary>
            Property to get the Method Parameters
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.SoapRequest">
            <summary>
            Property to get the Soap Request
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.SoapResponse">
            <summary>
            Property to get the Soap Response
            </summary>
        </member>
        <member name="P:Swaf.Call.DynamicWebServiceCall.ProxyAssembly">
            <summary>
            Property to get the Proxy Assembly
            </summary>
        </member>
        <member name="T:Swaf.BizObj.xml.XmlBizObjCursor">
            <summary>
            Summary description for XmlBizObjCursor.
            </summary>
            <summary>
            Summary description for FullBizObjCursor.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.OneOfDList">
            <summary>
            Summary description for OneOfDList.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.FieldValidator">
            <summary> The abstract base class for all FieldValidator objects that
            validates an individual field of a <c>BusinessObject</c>.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.validateNoThrow(Swaf.BizObj.IBizObj,System.String,System.String)">
            <summary>Validates that <c>value</c> (as a String) meets the constraints of <c>this</c> <c>FieldValidator</c>
            for inclusion in the field called <c>name</c> of the containing BusinessObject, <c>bizObj</c>.
            Note that <c>value</c> is always a String even though the field's type may not be String
            (e.g., if a given field's type is Number, this function validates that the String will
            convert to a Number correctly as well as, for example, verifying that the number is in range).
            So this function might be called when someone wants to know if it is valid to say, for
            example, 'bizObj.putConverted(name, value)'.
            </summary>
            <returns>Returns <c>null</c> if <c>value</c> is valid.
            Returns a String describing the problem if <c>value</c> is not valid.
            
            </returns>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.ToString">
            <summary>Converting a FieldValidator into a String produces the context that identifies that FieldValidator.
            E.g., "optional-uppercase-letters", "identifier", "pattern/{1+ {lowercase-letter}}{3-5 {digit}}{0+ {anychar}}foo/", etc.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.details(System.String)">
            <summary>Returns a more detailed description than what is returned from <c>toString()</c>.
            The returned string provides details about what this validator is and what its settings are.
            </summary>
            <param name="prefix">the left margin.  Normally a run of "\t" chars.
            
            </param>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.create(System.String,System.String,System.String,System.String)">
            <summary>This is a factory method that creates a FieldValidator object.
            It's very nearly the Prototype pattern, except under some
            circumstances this method does something more than simply
            'clone()' the <c>this</c> object.
            </summary>
            <param name="context">The string that caused this to get created.
            E.g., "optional-uppercase-letters", "identifier", "pattern/{digits}{3-5 {letter}}{identifier}foo/", etc.
            </param>
            <param name="a">The 1st "group" in the pattern that matched <c>context</c>.
            That is, the portion of <c>context</c> that matched the pattern's 1st <c>(...)</c>,
            or <c>null</c> if either there was no 1st <c>(...)</c> or that <c>(...)</c> didn't match.
            </param>
            <param name="b">The 2nd "group" in the pattern that matched <c>context</c>.
            That is, the portion of <c>context</c> that matched the pattern's 2nd <c>(...)</c>,
            or <c>null</c> if either there was no 2nd <c>(...)</c> or that <c>(...)</c> didn't match.
            </param>
            <param name="c">The 3rd "group" in the pattern that matched <c>context</c>.
            That is, the portion of <c>context</c> that matched the pattern's 3rd <c>(...)</c>,
            or <c>null</c> if either there was no 3rd <c>(...)</c> or that <c>(...)</c> didn't match.
            
            </param>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.FieldValidator.context_">
            <summary>This is the 'toString()' representation of this FieldValidator.
            That is, converting a FieldValidator into a String produces the context.
            E.g., "optional-uppercase-letters", "identifier", "pattern/{1+ {lowercase-letter}}{3-5 {digit}}{0+ {anychar}}foo/", etc.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.FieldValidator.patternString_">
            <summary>This is the <em>Pattern</em> used to match this FieldValidator.
            Warning: this will likely be <c>null</c> on all objects except the one(s) in <c>prototypes_</c>.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.FieldValidator.regexp_">
            <summary>This is the compiled <em>Perl5 Regular Expression</em> that corresponds to <c>patternString_</c>.
            Warning: this will likely be <c>null</c> on all objects except the one(s) in <c>prototypes_</c>.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.#ctor(System.String)">
            <summary>Constructor receives the FieldValidator's context.
            E.g., "optional-uppercase-letters", "identifier", "pattern/{1+ {lowercase-letter}}{3 {digit}}/", etc.
            This String is used in 'toString()'.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.parseError(System.String)">
            <summary>Throws a properly formatted <c>FieldValidator.ParseError</c>.
            This is a helper function, normally called from the 'create()' method of a derived class.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.toLong(System.String,System.Object)">
            <summary>Converts the parameter-string to a 'long', throwing a FieldValidator.ParseError if it fails.
            This is a helper function, normally called from the 'create()' method of a derived class.
            </summary>
            <param name="context">the original validator string (for error messages).
            </param>
            <param name="s">the string to be converted.
            @throws ParseError when something goes wrong (i.e., if it can't be converted).
            
            </param>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.toInt(System.String,System.Object)">
            <summary>Converts the parameter-string to an 'int', throwing a FieldValidator.ParseError if it fails.
            This is a helper function, normally called from the 'create()' method of a derived class.
            </summary>
            <param name="context">the original validator string (for error messages).
            </param>
            <param name="s">the string to be converted.
            @throws ParseError when something goes wrong (i.e., if it can't be converted).
            
            </param>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.toDouble(System.String,System.Object)">
            <summary>Converts the parameter-string to a 'double', throwing a FieldValidator.ParseError if it fails.
            This is a helper function, normally called from the 'create()' method of a derived class.
            </summary>
            <param name="context">the original validator string (for error messages).
            </param>
            <param name="s">the string to be converted.
            @throws ParseError when something goes wrong (i.e., if it can't be converted).
            
            </param>
        </member>
        <member name="P:Swaf.BizObj.fieldValidator.FieldValidator.pattern">
            <summary>This is the <em>Pattern</em> used to match this FieldValidator.
            Warning: this will likely be <c>null</c> on all objects except the one(s) in <c>prototypes_</c>.
            </summary>
        </member>
        <member name="P:Swaf.BizObj.fieldValidator.FieldValidator.regexp">
            <summary>This is the compiled <em>Perl5 Regular Expression</em> that corresponds to <c>pattern()</c>.
            Warning: this will likely be <c>null</c> on all objects except the one(s) in <c>prototypes_</c>.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.FieldValidator.NotValid">
            <summary>
            This exception is thrown whenever a String would be an invalid field.
            For example, if someone tried to set an Age field to "xyz" or "-1".</summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FieldValidator.NotValid.#ctor(System.String,System.String,System.String,System.String)">
            <summary>Creates a new NotValid exception</summary>
            <param name="bizObjType">name of the BusinessObject's type.  E.g., "Address", "Doctor", etc.</param>
            <param name="name">the invalid field's name.</param>
            <param name="newValue">String representation of the value that wasn't valid.</param>
            <param name="details">more details saying why the String wasn't valid.</param>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.CompositeValidator">
            <summary> The concrete FieldValidator that contains a group
            of arbitrary Validators (the Composite Design Pattern).
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.CompositeValidator.create(System.String,System.String,System.String,System.String)">
            <summary>This should never be called.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.CompositeValidator.#ctor(System.String,System.Collections.ICollection)">
            <summary>
            Constructs a CompositeValidator using the specified Collection of Validators, 'validators'.</summary>
            <param name="s">the String that was parsed to produce 'validators'.</param>
            <param name="validators">a Collection of FieldValidator objects.
            No element of 'validators' may be 'null'.</param>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.CompositeValidator.list_">
            <summary>These are the Validators in this Composite.</summary>
        </member>
        <member name="T:Swaf.ApplicationRemoteServer">
            <summary>
            Summary description for ApplicationRemoteAccess.
            </summary>
        </member>
        <member name="M:Swaf.ApplicationRemoteAccess.ValidateSession(Swaf.IApplication,System.Boolean,System.String,Swaf.Container.INameAddressSupport,System.String)">
            <summary>
            This method will validate the session and then set the current principal if necessary
            </summary>
            <param name="sessionApp"></param>
            <param name="isTiedToGlobalApp"></param>
            <param name="principalUserName"></param>
            <param name="principalAdditional"></param>
            <param name="principalInstanceId"></param>
        </member>
        <member name="M:Swaf.ApplicationRemoteAccess.executeRule(System.String,System.Boolean,System.String,Swaf.Container.INameAddressSupport,System.String,System.String,System.String,System.Collections.ICollection,System.Boolean)">
            <summary>
            executeRule is used to handle remote rule calls.  It will take the session Id to either find the current
            session or create a new session.  It will then validate the sessionApplication that is to be used.
            The sessionApp will then be the context to execute the rule and validate the session through any supplied
            session validator.
            </summary>
            <param name="sessionId"></param>
            <param name="isTiedToGlobalApp"></param>
            <param name="userName"></param>
            <param name="additionalInfo"></param>
            <param name="instanceId"></param>
            <param name="methodName"></param>
            <param name="ruleParams"></param>
            <param name="multiCall"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.ApplicationRemoteAccess.executeRule(System.String,System.Boolean,System.String,Swaf.Container.INameAddressSupport,System.String,System.String,System.String,System.Object)">
            <summary>
            executeRule is used to handle remote rule calls.  It will take the session Id to either find the current
            session or create a new session.  It will then validate the sessionApplication that is to be used.
            The sessionApp will then be the context to execute the rule and validate the session through any supplied
            session validator.
            </summary>
            <param name="sessionId"></param>
            <param name="isTiedToGlobalApp"></param>
            <param name="userName"></param>
            <param name="additionalInfo"></param>
            <param name="instanceId"></param>
            <param name="methodName"></param>
            <param name="ruleParams"></param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Xml.LineInfoXmlDocument">
            <summary>
            Summary description for LineInfoXmlDocument.
            </summary>
        </member>
        <member name="T:Swaf.AdvUdpClient">
            <summary>
            A class that inherits from the System.Net.Sockets.UdpClient in order to set advanced
            socket options so that multiple UdpClient objects can listen on the same IP address/port.
            This is important for the UdpServerStateManager given that multiple instances of it can be
            used on the same machine at the same time.</summary>
        </member>
        <member name="M:Swaf.AdvUdpClient.#ctor(System.Int32)">
            <summary>
            Intializes the UpdClient object for the given port on any IpAddress the
            code wants to use.</summary>
        </member>
        <member name="T:Swaf.UdpServerStateManager">
             <summary>
             Implements the IServerStateManager by use UDP multicast technology.  </summary>
             <remarks>While the UDP multicast technology is not guarenteed to deliver
             its datagrams in order or even to deliver them at all this class manages these
             issues with a recieved messages IMap and will request datagrams to be resent
             based on missing ones.  Each message sent by the client will be broken down
             into at least 3 messages as a header and footer is always sent.  Data from the 
             client that is over 60000 bytes will be broken down into multiple 
             datagrams.  Each message has a header attached to it that includes a message id
             and which datagram it is out of the total number of datagrams that make up
             the message.
             
             This class uses a thread to monitor received messages and if a message has
             not received all of its pieces and no datagram has come in for a set amount of
             time, the thread will send a resend message to the machine the origional message
             was recieved from.
             
             The current implementation of this retry technology is not for mission critical
             situations.  It works well, but under extremely heavy load it is possible for every
             datagram from a message to be lost.  If that happens this class doesnt know datagrams
             were lost and wont ask for the message to be resent.  It works well when things
             needs to stay in sync and if missing messages are lost the application wont be
             totally broken from it.
             
             This class is intended to be used by other classes to help them stay in sync with
             other instances of themselves.  Those classes can provide a "resync" type of message
             that will cause the objects to resync with eachother to help avoid situations where
             lost message cause failures.
             
             Under observation, this class appears to work very well when the number of messages
             being sent in the conversation is not in the hundreds a second.  If the changes are 10
             or so a second or less, things work well.  UDP looses datagrams the most under heavy 
             load.
             
             This class only supports one observer per message type and one
             global message observer. It will notify a specific message 
             observer and a global observer for the same message though.
            
             This class also supports using the framework's encryption abstraction 
             to encrypt/decrypt the messages being used by this object on both 
             sends and receives.  However, it doesnt support being in an encrypt
             mode and receiving unencrypted methods.  If a message piece cannot be
             unencrypted it is assumed to be corrupted not unencrypted and will
             be asked to be sent again.
             
             This class supports multiple conversations on a single IP address,
             but it is not recommended to do that because of the nature of 
             UDP reliability.  The more conversations on a single IP address means
             the more of a chance there is that collisions occur which will slow
             down performance due to resends and increase the possiblility that
             every datagram for a small message will be lost.
             
             Using UDP multicast reliably is not trivial.  For more information
             about UDP multicast and building a reliable communication 
             stream from it see the online documentation for System.Net.Sockets.UdpClient
             and other online sources.
             
             This class has a static shutdown method that shutdown every instance of
             the UdpServerStateManager.  This class does not attempt to register
             with the framework's shutdown event to trigger this and is up to
             another class to do it.</remarks>
        </member>
        <member name="F:Swaf.UdpServerStateManager.s_allStateManagers">
            <summary>
            This static list of state manager is used to help shutdown the threads
            involved when the application is shutting down.</summary>
        </member>
        <member name="F:Swaf.UdpServerStateManager.m_binFormatter">
            <summary>
            This is the binary formatter used when sending messages of type object
            that must be serialized into a byte array first.  This instance is created
            on first use so that if a object type is never sent then this instance
            will never be created.</summary>
        </member>
        <member name="F:Swaf.UdpServerStateManager.m_identity">
            <summary>
            The identity of the conversation, not the UdpServerStateManager
            instance.  When messages are received on the ip/port that dont have
            that id they are ignored.  That would mean there are multiple
            conversations on the same ip/port.</summary>
        </member>
        <member name="M:Swaf.UdpServerStateManager.#ctor(System.String,System.String,System.Int32,System.Int32,System.String)">
            <summary>
            Initializes the object to start listening to the given UDP multicast 
            group ip addess/port num for all machines within the given hops from 
            the machine this object is on.</summary>
            <remarks>
            This is the only constructor for this class which starts the threads to listen
            to the UPD socket and another thread to monitor the incoming messages in the
            m_receivedMessages dictionary.</remarks>
            <param name="identity">the conversation id this class is a member of.</param>
            <param name="multiCastGroupIP">The ip address of the upd multicast.  Must
            be within the defined multicast ip address range of 224.0.0.0 to 239.255.255.255.</param>
            <param name="portNum">The port num of the coversation</param>
            <param name="ttlDistance">Even though its called ttlDistance, its actually
            the number of network hops.  This number should be small, like 1 through 2 or 3.
            The bigger the number the larger the range of machines that can here the message
            and participate or clog up the ip/port for UDP failure.</param>
            <param name="cryptoKeyName">The valid framework crypto keyname
            to use.  If null, no encryption is used.  It is recommended to use
            an encryption key because ANYONE can easily see all the messages
            in the conversation because of the very unsecure nature of UDP
            multicast.</param>
        </member>
        <member name="M:Swaf.UdpServerStateManager.registerMessageHandler(Swaf.processMessage)">
            <summary>
            registers the global handler, of which there can only be one.  Registering 
            a handler will over-write any exisiting global handler and they will not be
            called anymore.</summary>
            <param name="handler">The global observer</param>
        </member>
        <member name="M:Swaf.UdpServerStateManager.registerMessageHandler(System.String,Swaf.processMessage)">
            <summary>
            Registers a handler for a specific type of message, of which there can only
            be one handler.  Registering a handler for the message type will
            over-write any exisiting handler for that message and that observer
            will no longer be called for incoming messages.</summary>
            <param name="msgType">The message type being observed.</param>
            <param name="handler">The observer to be registered.</param>
        </member>
        <member name="M:Swaf.UdpServerStateManager.unregisterMessageHandler(System.String)">
            <summary>
            Removes the observer for the given message type.</summary>
            <param name="msgType">The message type to remove the 
            observer for.  If null the global observer will be
            removed.</param>
        </member>
        <member name="M:Swaf.UdpServerStateManager.stop">
            <summary>
            Will release the threads that are used by this instance.</summary>
        </member>
        <member name="M:Swaf.UdpServerStateManager.sendMessage(System.String,System.String)">
            <summary>
            Sends a string type message of the given message type.</summary>
            <param name="msgType">The message type of the given message.
            Must not be null.</param>
            <param name="message">The message contents. Must not be null.</param>
        </member>
        <member name="T:Swaf.Logging.SimpleLogObserver">
            <summary>
            Summary description for SimpleLogObserver.
            </summary>
        </member>
        <member name="T:Swaf.Logging.BaseLogObserver">
            <summary>
            Summary description for BaseLogObserver.
            </summary>
        </member>
        <member name="T:Swaf.Gui.GuiManager">
            <summary>
            Summary description for GuiManager.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.Messaging.StringToBizObjDataFormatter">
            <summary>
            Summary description for MessageBizObjFormatter.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.ODBCHelper">
            <summary>
            Summary description for ODBCHelper.
            </summary>
        </member>
        <member name="T:Swaf.Container.ExpirationNotification">
            <summary>
            Summary description for ContainerBase.
            </summary>
        </member>
        <member name="T:Swaf.Call.ThreadedCallbackQueue">
            <summary>
            Summary description for ThreadedCallbackQueue.
            </summary>
        </member>
        <member name="T:Swaf.Call.BaseCallbackQueue">
            <summary>
            Summary description for BaseCallbackQueue.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.Worker">
            <summary>
            Summary description for Worker.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.TraceDecorator">
            <summary>
            This class provides the ability to log the input and results of any rule call
            via the log decorator.  It is controlled by adding the log attribute to a rule 
            declaration with a value of true to enable logging.  Optionally, a logLevel and/or 
            logExceptionsOnly attribute can be added to further control teh logging behavior.  
            If these optional attributes are not provided, the default logging level will be used
            as defined in the application feature file and all rule calls to this rule will be logged.
            </summary>
        </member>
        <member name="M:Swaf.BizRule.TraceDecorator.#ctor(System.String,System.String,System.Object)">
            <summary>
            The main constructor for the TraceDecorator class.  This is called during configuration
            as the rule definition is loaded.
            </summary>
            <param name="name">The name of the decorator???</param>
            <param name="val">True/False - If True logging is enabled for this rule.</param>
            <param name="extraInfo">N/A</param>
        </member>
        <member name="T:Swaf.BizRule.BasicRuleContext">
            <summary>
            Summary description for BasicRuleContext.
            </summary>
            <remarks>
            This class extends <c>MarshalByRefObject</c> which means that it is used remotely when calling a remote rule manager
            with a rule context, or having a rule that is a .NET remoted class.  Currently, not custom proxy is used, so the performance
            of accessing the <c>INameAddressSupport</c> members would be bad in a remote call because each <c>get</c> or <c>put</c>
            call would be its own network transaction.  A "smart proxy" is intented for this class which knows how to serialize chunks
            of the <c>m_contextStorage FlexiMap</c> in order to avoid this type of issue.  For now, stay clear of doing remote rule calls
            and passing context for this reason (4/29/04).
            </remarks>
        </member>
        <member name="T:Swaf.BizObj.ManagementRules">
            <summary>
            Contains Management Rules for BizObjManager.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.ManagementRules.defineBizObjsFromDictionary(Swaf.IApplication,Swaf.BizRule.IRuleContext,System.Collections.IDictionary)">
            <summary>
            Business Rule implementation to expose this functionality externally.
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <param name="bizObjDefs"></param>
        </member>
        <member name="T:Swaf.BizObj.basic.IndexedFullBizObjList">
            <summary>
            Summary description for IndexedFullBizObjList.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.basic.IndexedFullBizObjList.addBizObj(Swaf.BizObj.IBizObj)">
            <summary>
            Called by the main bizobj list to update its indexes.  Not to be used by outside callers.
            </summary>
            <param name="obj"></param>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObjList.#ctor(Swaf.BizObj.IBizObjDefinition,Swaf.BizObj.IBizObjSource,System.Xml.XmlTextReader)">
            <summary>
            Creates a bizobj list by reconstructing from xml stream
            </summary>
            <param name="objType">If null, it will be set based on name of first child element in the xml list.</param>
            <param name="source"></param>
            <param name="xml"></param>
        </member>
        <member name="T:Swaf.BGuid.Guid">
            <summary>
            Summary description for Uri.
            </summary>
        </member>
        <member name="T:Swaf.Security.SecurityPrincipal">
            <summary>
            The SecurityPrincipal class inherits from SecurityPrincipalBase and provides 
            the full security implementation exposed via the SecurityFeature feature file.  
            This class implements the getPrivilege method and does not override any of the 
            functions in the base class.  The getPrivilege method calls the get method of the 
            resourceSets property to get the effective privilege of the requested resource.
            </summary>
        </member>
        <member name="T:Swaf.Security.SecurityPrincipalBase">
            <summary>
            The SecurityPrincipalBase class implements all of the common functionality for 
            SecurityPrincipals and serves as the base class for the DefaultSecurityPrincipal 
            and SecurityPrincipal classes.  The following methods and properties of the 
            ISecurityPrincipal interface are implemented in the SecurityPrincipalBase class: 
            resourceSets, roles, rolesCall, userName, additionalInfo, isUersInRole, and assert.
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.#ctor(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)">
            <summary>
            Constructor for instancing a default security principal from code
            </summary>
            <param name="UserName">The name of the user associated with this principal</param>
            <param name="additionalInfo">INameAddressSupport instance containing application 
            specific information about the principal</param>
            <param name="rolesCall">ICall instance used to retrieve the roles for a principal.</param>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.copyResourceSets">
            <summary>
            Private helper method for copying resourcesets
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.#ctor(System.Xml.XmlElement)">
            <summary>
            Constructor used by the configuration system or to deserialize a serialize principal from an Xml node.
            </summary>
            <param name="ele">XmlNode containing information about the principal</param>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.isUserInRole(System.String)">
            <summary>
            <see cref="M:Swaf.Security.ISecurityPrincipal.isUserInRole(System.String)"/>
            </summary>
            <param name="roleName"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.getPrivilege(System.String)">
            <summary>
            Abstract method for getPrivilege. <see cref="M:Swaf.Security.ISecurityPrincipal.getPrivilege(System.String)"/>
            </summary>
            <param name="resourceName"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.hasPrivilege(System.String)">
            <summary>
            <see cref="M:Swaf.Security.ISecurityPrincipal.hasPrivilege(System.String)"/>
            </summary>
            <param name="resourceName"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.assert(System.String,Swaf.Security.Privileges)">
            <summary>
            <see cref="M:Swaf.Security.ISecurityPrincipal.assert(System.String,Swaf.Security.Privileges)"/>
            </summary>
            <param name="resourceName"></param>
            <param name="minPrivilege"></param>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.put(System.String,System.Object,System.Object)">
            <summary>
            The put method is inherited from the INameAddressSupport interface and should 
            not be implemented as it breaks security standards to allow editing of the 
            current principal once it is created.
            </summary>
            <param name="nameAddress"></param>
            <param name="val"></param>
            <param name="extraInfo"></param>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.put(System.String,System.Object)">
            <summary>
            The put method is inherited from the INameAddressSupport interface and should 
            not be implemented as it breaks security standards to allow editing of the 
            current principal once it is created.
            </summary>
            <param name="nameAddress"></param>
            <param name="val"></param>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.containsField(System.String)">
            <summary>
            The containsField method is inherited from the INameAddressSupport interface and 
            should net the same result as calling hasPrivilege.
            </summary>
            <param name="nameAddress">Resource being sought</param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.get(System.String)">
            <summary>
            The get method is inherited from the INameAddressSupport interface and should 
            net the same result as calling getPrivileges when called with 2 parameters 
            (nameaddress and null).  However, if simply called with the name address, get 
            should return the actual resource.
            </summary>
            <param name="nameAddress">Resource being sought</param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.get(System.String,System.Object)">
            <summary>
            The get method is inherited from the INameAddressSupport interface and should 
            net the same result as calling getPrivileges when called with 2 parameters 
            (nameaddress and null).  However, if simply called with the name address, get 
            should return the actual resource.
            </summary>
            <param name="nameAddress">Resource being sought</param>
            <param name="oneArg"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.get(System.String,System.Object[])">
            <summary>
            The get method is inherited from the INameAddressSupport interface and should 
            net the same result as calling getPrivileges when called with 2 parameters 
            (nameaddress and null).  However, if simply called with the name address, get 
            should return the actual resource.
            </summary>
            <param name="nameAddress">Resource being sought</param>
            <param name="infoArgs"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipalBase.getXml(System.String)">
            <summary>
            The getXml method is inherited from the INameAddressSupport interface and returns 
            an Xml string representing the serialized information about the current principal, 
            its roles and resourceSets.  This method takes a single string parameter that is 
            not used by the base implementation.
            </summary>
            <param name="options">not used by the base implementation</param>
            <returns></returns>
        </member>
        <member name="P:Swaf.Security.SecurityPrincipalBase.rolesCall">
            <summary>
            <see cref="P:Swaf.Security.ISecurityPrincipal.rolesCall"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityPrincipalBase.userName">
            <summary>
            <see cref="P:Swaf.Security.ISecurityPrincipal.userName"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityPrincipalBase.resourceSets">
            <summary>
            <see cref="P:Swaf.Security.ISecurityPrincipal.resourceSets"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityPrincipalBase.roles">
            <summary>
            <see cref="P:Swaf.Security.ISecurityPrincipal.roles"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityPrincipalBase.additionalInfo">
            <summary>
            <see cref="P:Swaf.Security.ISecurityPrincipal.additionalInfo"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityPrincipalBase.isGetOnly">
            <summary>
            The isGetOnly property is inherited from the INameAddressSupport interface and 
            should always return true for security related components that implement the 
            INameAddressSupport interface.
            <seealso cref="P:Swaf.Container.INameAddressSupport.isGetOnly"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityPrincipalBase.SerializationSupport">
            <summary>
            <see cref="P:Swaf.Container.INameAddressSupport.SerializationSupport"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityPrincipalBase.Xml">
            <summary>
            The Xml property is inherited from the INameAddressSupport interface and returns 
            the same thing as getXml.
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipal.#ctor(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)">
            <summary>
            Constructor for instancing a default security principal from code
            </summary>
            <param name="UserName">The name of the user associated with this principal</param>
            <param name="additionalInfo">INameAddressSupport instance containing application 
            specific information about the principal</param>
            <param name="rolesCall">ICall instance used to retrieve the roles for a principal.</param>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipal.#ctor(System.Xml.XmlElement)">
            <summary>
            Constructor used by the configuration system or to deserialize a serialized principal from an Xml node.
            </summary>
            <param name="ele">XmlNode containing information about the principal</param>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipal.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Constructor used by the system during binary deserialization
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="M:Swaf.Security.SecurityPrincipal.getPrivilege(System.String)">
            <summary>
            Implementation of abstract getPrivilige method from base class.  This implementation
            returns the privilege as defined in the requested ResourceSet.  If no privilege is
            found, Privileges.None is returned.
            </summary>
            <param name="resourceName">Fully qualified name of the requested resource (ResourceSet.Resource)</param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Script.NetScriptingConfigManager">
            <summary>
            Summary description for NetScriptingConfigManager.
            </summary>
        </member>
        <member name="T:Swaf.Resource.SimpleMacro">
            <summary>
            Summary description for SimpleMacro.
            </summary>
        </member>
        <member name="T:Swaf.Logging.FileLogObserver">
            <summary>
            Summary description for FileLogLogObserver.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.AdoNetIntFormatter">
            <summary>
            Summary description for AdoNetIntFormatter.
            </summary>
        </member>
        <member name="T:Swaf.Container.ModelReferenceNode">
            <summary>
            Summary description for ModelReferenceNode.
            </summary>
        </member>
        <member name="M:Swaf.Container.ModelReferenceNode.containsField(System.String)">
            <summary>
            </summary>
            <param name="nameAddress"></param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Call.WebServiceCall">
            <summary>
            Exposes the ability to call a web service from a rule or task
            </summary>
        </member>
        <member name="F:Swaf.Call.WebServiceCall.m_call">
            <summary>
            The call instance
            </summary>
        </member>
        <member name="M:Swaf.Call.WebServiceCall.#ctor(System.String,System.Xml.XmlElement)">
            <summary>
            Constructor with name and initialization information
            </summary>
        </member>
        <member name="M:Swaf.Call.WebServiceCall.#ctor(System.Object,System.String,System.Object[])">
            <summary>
            Constructor with this instance, method to be called, and params
            </summary>
        </member>
        <member name="M:Swaf.Call.WebServiceCall.call(System.Object[])">
            <summary>
            Invoke the method with the supplied params
            </summary>
        </member>
        <member name="M:Swaf.Call.WebServiceCall.ProcessCall(System.String,System.String,System.Xml.XmlElement)">
            <summary>
            Process the request and invoke the call for the supplied class and method combination
            </summary>
        </member>
        <member name="M:Swaf.Call.WebServiceCall.MassageParams(System.Object[])">
            <summary>
            Remove the application and rule context
            </summary>
        </member>
        <member name="T:Swaf.Call.SoapHttpClientProtocolEx">
            <summary>
            Exposes the ability to get the SOAP request and response
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapHttpClientProtocolEx.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="P:Swaf.Call.SoapHttpClientProtocolEx.SoapRequest">
            <summary>
            Property to get or set the SOAP request
            </summary>
        </member>
        <member name="P:Swaf.Call.SoapHttpClientProtocolEx.SoapResponse">
            <summary>
            Property to get or set the SOAP response
            </summary>
        </member>
        <member name="T:Swaf.Call.SoapMessageAccessClientExtension">
            <summary>
            Expose the SOAP message on the client
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapMessageAccessClientExtension.GetInitializer(System.Web.Services.Protocols.LogicalMethodInfo,System.Web.Services.Protocols.SoapExtensionAttribute)">
            <summary>
            Initialize data 
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapMessageAccessClientExtension.GetInitializer(System.Type)">
            <summary>
            Initialize data 
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapMessageAccessClientExtension.Initialize(System.Object)">
            <summary>
            Initialize
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapMessageAccessClientExtension.ProcessMessage(System.Web.Services.Protocols.SoapMessage)">
            <summary>
            Process the SOAP message
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapMessageAccessClientExtension.ChainStream(System.IO.Stream)">
            <summary>
            Chain the memory streams
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapMessageAccessClientExtension.StoreRequestMessage(System.Web.Services.Protocols.SoapMessage)">
            <summary>
            Store message in our slot in the SoapHttpClientProtocol-derived class
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapMessageAccessClientExtension.StoreResponseMessage(System.Web.Services.Protocols.SoapMessage)">
            <summary>
            Store message in our slot in the SoapHttpClientProtocol-derived class
            </summary>
        </member>
        <member name="M:Swaf.Call.SoapMessageAccessClientExtension.Copy(System.IO.Stream,System.IO.Stream)">
            <summary>
            Copy the streams
            </summary>
        </member>
        <member name="T:Swaf.Call.SoapMessageAccessClientExtensionAttribute">
            <summary>
             Specifies a SOAP extension should run with an XML Web service method
            </summary>
        </member>
        <member name="P:Swaf.Call.SoapMessageAccessClientExtensionAttribute.ExtensionType">
            <summary>
            Get the extension type
            </summary> 
        </member>
        <member name="P:Swaf.Call.SoapMessageAccessClientExtensionAttribute.Priority">
            <summary>
            Property to get or set the SOAP message priority
            </summary>
        </member>
        <member name="T:Swaf.Call.RoundRobinCall">
            <summary>
            Summary description for RoundRobinCall.
            </summary>
        </member>
        <member name="M:Swaf.Call.RoundRobinCall.GetStartCallIndex">
            <summary>
            Added method to control each usage of RoundRobinCall will start from a different position, but then
            error handling etcetera will be performed from that base.
            </summary>
            <returns></returns>
        </member>
        <member name="T:Swaf.Call.RoundRobinCallException">
            <summary>
            RoundRobinCallException thrown when a exception occurs calling a round robin call
            </summary>
        </member>
        <member name="M:Swaf.Call.RoundRobinCallException.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:Swaf.Call.RoundRobinCallException.#ctor(System.String)">
            <summary>
            Standard message constructor
            </summary>
            <param name="message"></param>
        </member>
        <member name="M:Swaf.Call.RoundRobinCallException.#ctor(System.String,System.Exception)">
            <summary>
            Standard message constructor with an inner exception
            </summary>
            <param name="message"></param>
            <param name="innerException"></param>
        </member>
        <member name="M:Swaf.Call.RoundRobinCallException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Deserialization constructor
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.AnythingGoesValidator">
            <summary> The concrete FieldValidator derived class that accepts anything as valid
            (use this whenever you would normally have a 'null' FieldValidator pointer).
            </summary>
        </member>
        <member name="T:Swaf.BitFlags">
            <summary>
            This class represents a collection of boolean values stored as bits in a dynamic 
            array of char elements.  The array of chars is sized to be only big enough for the 
            number of bits set.  It dynamically sizes itself as calls to its setBit are done.
            
            If created with its default constructor this class will have a null array.  If
            the clear method is called it will delete the array.  
            </summary>
        </member>
        <member name="M:Swaf.BitFlags.#ctor">
            <summary>
            Initializes the object with an empty set of bits and no bit set to true.</summary>
        </member>
        <member name="M:Swaf.BitFlags.#ctor(System.String)">
            <summary>
            The class support for creating an initial value for the BitFlags byte array.
            (e.g. when creating 5 byte array to store the bits you can initialize the class by
            passing the param as "0,0,0,0,0")
            the example above will then create a five elements in the array.
            to set the third element value of the array to true you can then call the
            setBit method like setBit(32,true)</summary>
            <param name="arrayInfo">a string of byte values separated by comma.</param>
        </member>
        <member name="M:Swaf.BitFlags.getArrayInfo">
            <summary>
            returns a string representation of the current BitFlag Array.</summary>
            <returns>The string of bytes from the bit array in a comma delimited format</returns>
        </member>
        <member name="M:Swaf.BitFlags.getBit(System.Int32)">
            <summary>
            returns boolean status of a given bit index.  If the index
            requested is outside of the range of bits set, false is returned.</summary>
        </member>
        <member name="M:Swaf.BitFlags.Clear">
            <summary>
            Sets all bits to false by setting the internal byte array to null.
            </summary>
        </member>
        <member name="M:Swaf.BitFlags.setBit(System.Int32,System.Boolean)">
            <summary>
            change the bit value of an array element using the shift bit operator.
            this can be use to track down dirty field value of a bizObj</summary>
            <param name="index">array element index</param>
            <param name="bit">set the element value to either true or false</param>
        </member>
        <member name="P:Swaf.BitFlags.AnySet">
            <summary>
            checks whether any of the array value had been set with value != 0</summary>
        </member>
        <member name="T:Swaf.Security.SecurityManager">
            <summary>
            The SecurityManager class provides all of the base functionality for security 
            configuration handling, concrete implementations of createPrincipal method and 
            resourceSets and currentPrincipal properties and serves as the root element in 
            the security object model.  This class is instantiated and exposed directly from 
            the Application object (the global application object).
            
            The SecurityManagerClass provides the hooks into the security sub-system within
            CSF.  This class provides the factory for creating new security principals and
            maintains a reference to the current security principal as well as base list of
            available resourceSets.
            
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityManager.#ctor">
            <summary>
            Default constructor for SecurityManager class.
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityManager.createPrincipal(Swaf.Container.INameAddressSupport)">
            <summary>
            Creates and returns a new instance of an ISecurityPrincipal object.  This method requires
            that a SecurityPrincipal configuration node be present somewhere in the applicaton's config
            files.  BaseFrameworkFeature defines a default principal that is basically an noop.
            <see cref="M:Swaf.Security.ISecurityManager.createPrincipal(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)"/>
            </summary>
            <param name="principalInfo">This INameAddressSupport parameter MUST provide at a minimum
            an entry named UserName of type string.  Any additional entries needed by the the
            system using the security module are acceptable.</param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityManager.createPrincipal(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)">
            <summary>
            <see cref="M:Swaf.Security.ISecurityManager.createPrincipal(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)"/>
            </summary>
            <param name="UserName"></param>
            <param name="additionalInfo"></param>
            <param name="rolesCall"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityManager.createPrincipal(System.Xml.XmlElement)">
            <summary>
            <see cref="M:Swaf.Security.ISecurityManager.createPrincipal(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)"/>
            </summary>
            <param name="principalEle"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityManager.addResourceSet(Swaf.Security.IResourceSet)">
            <summary>
            Called from the config handler for resourceset node to add the resource set to the cache
            and to the default principal if present.
            </summary>
            <param name="newSet"></param>
        </member>
        <member name="M:Swaf.Security.SecurityManager.checkConfigStatus">
            <summary>
            <see cref="M:Swaf.Config.IConfigPartner.checkConfigStatus"/>
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityManager.registerForConfig(Swaf.Config.IConfigManager)">
            <summary>
            <see cref="M:Swaf.Config.IConfigPartner.registerForConfig(Swaf.Config.IConfigManager)"/>
            </summary>
            <param name="config"></param>
        </member>
        <member name="P:Swaf.Security.SecurityManager.currentPrincipal">
            <summary>
            <see cref="P:Swaf.Security.ISecurityManager.currentPrincipal"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityManager.resourceSets">
            <summary>
            <see cref="P:Swaf.Security.ISecurityManager.resourceSets"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityManager.defaultRolesCall">
            <summary>
            <see cref="P:Swaf.Security.ISecurityManager.defaultRolesCall"/>
            </summary>
        </member>
        <member name="T:Swaf.Security.SecurityManager.SecurityRolesCallConfigHandler">
            <summary>
            Handler class for Security RolesCall configuration nodes
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityManager.SecurityRolesCallConfigHandler.#ctor(Swaf.Security.SecurityManager)">
            <summary>
            Constructor called by registerForConfig
            </summary>
            <param name="parent">Reference to the containing SecurityManager</param>
        </member>
        <member name="M:Swaf.Security.SecurityManager.SecurityRolesCallConfigHandler.executeBefore(Swaf.Config.IConfigElement)">
            <summary>
            <see cref="M:Swaf.Config.ConfigHandler.executeBefore(Swaf.Config.IConfigElement)"/>
            </summary>
            <param name="configInfo"></param>
        </member>
        <member name="T:Swaf.Security.SecurityManager.DefaultPrincipalConfigHandler">
            <summary>
            Handler class for Security DefaultPrincipal configuration nodes
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityManager.DefaultPrincipalConfigHandler.#ctor(Swaf.Security.SecurityManager)">
            <summary>
            Constructor called by registerForConfig
            </summary>
            <param name="parent">Reference to the containing SecurityManager</param>
        </member>
        <member name="M:Swaf.Security.SecurityManager.DefaultPrincipalConfigHandler.executeBefore(Swaf.Config.IConfigElement)">
            <summary>
            <see cref="M:Swaf.Config.ConfigHandler.executeBefore(Swaf.Config.IConfigElement)"/>
            </summary>
            <param name="configInfo"></param>
        </member>
        <member name="T:Swaf.Security.SecurityManager.SecurityPrincipalConfigHandler">
            <summary>
            Handler class for Security SecurityPrincipal configuration nodes
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityManager.SecurityPrincipalConfigHandler.#ctor(Swaf.Security.SecurityManager)">
            <summary>
            Constructor called by registerForConfig
            </summary>
            <param name="parent">Reference to the containing SecurityManager</param>
        </member>
        <member name="M:Swaf.Security.SecurityManager.SecurityPrincipalConfigHandler.executeBefore(Swaf.Config.IConfigElement)">
            <summary>
            <see cref="M:Swaf.Config.ConfigHandler.executeBefore(Swaf.Config.IConfigElement)"/>
            </summary>
            <param name="configInfo"></param>
        </member>
        <member name="T:Swaf.Security.SecurityManager.SecurityResourceSetConfigHandler">
            <summary>
            Handler class for Security ResourceSet configuration nodes
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityManager.SecurityResourceSetConfigHandler.#ctor(Swaf.Security.SecurityManager)">
            <summary>
            Constructor called by registerForConfig
            </summary>
            <param name="parent">Reference to the containing SecurityManager</param>
        </member>
        <member name="M:Swaf.Security.SecurityManager.SecurityResourceSetConfigHandler.executeBefore(Swaf.Config.IConfigElement)">
            <summary>
            <see cref="M:Swaf.Config.ConfigHandler.executeBefore(Swaf.Config.IConfigElement)"/>
            </summary>
            <param name="configInfo"></param>
        </member>
        <member name="T:Swaf.Security.DefaultSecurityPrincipal">
            <summary>
            The DefaultSecurityPrincipal class inherits from SecurityPrincipalBase and 
            provides the backward compatible security principal for existing CSF applications.  
            It implements the getPrivilege method and overrides the isUserInRole method from 
            the SecurityPrincipalBase class.  The getPrivilege method always returns the highest 
            privilege, Delete and the isUsesrInRole method always returns true..
            </summary>
        </member>
        <member name="M:Swaf.Security.DefaultSecurityPrincipal.#ctor(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)">
            <summary>
            Constructor for instancing a default security principal from code
            </summary>
            <param name="UserName">The name of the user associated with this principal</param>
            <param name="additionalInfo">INameAddressSupport instance containing application 
            specific information about the principal</param>
            <param name="rolesCall">ICall instance used to retrieve the roles for a principal.</param>
        </member>
        <member name="M:Swaf.Security.DefaultSecurityPrincipal.#ctor(System.Xml.XmlElement)">
            <summary>
            Constructor used by the configuration system or to deserialize a serialize principal from an Xml node.
            </summary>
            <param name="ele">XmlNode containing information about the principal</param>
        </member>
        <member name="M:Swaf.Security.DefaultSecurityPrincipal.isUserInRole(System.String)">
            <summary>
            Overridden method to always provide true for any requested role.
            <seealso cref="M:Swaf.Security.ISecurityPrincipal.isUserInRole(System.String)"/>
            </summary>
            <param name="roleName">Requested role</param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.DefaultSecurityPrincipal.getPrivilege(System.String)">
            <summary>
            Implementation of abstract method to always return the highest know privilege, Delete for any requested
            resource.
            <seealso cref="M:Swaf.Security.ISecurityPrincipal.getPrivilege(System.String)"/>
            </summary>
            <param name="resourceName"></param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Messaging.MessagingSystemBase">
            <summary>
            Summary description for BaseHelper.
            </summary>
        </member>
        <member name="T:Swaf.Gui.Command">
            <summary>
            Summary description for ActionCommand.
            </summary>
        </member>
        <member name="M:Swaf.Gui.Command.getImageUrl(Swaf.Gui.CommandMode)">
            <summary>The location of the image to display to the user for the command.</summary>
        </member>
        <member name="T:Swaf.DataAccess.ConnectionFactoryContainerNode">
            <summary>
            Summary description for ConnectionFactoryContainerNode.
            </summary>
        </member>
        <member name="T:Swaf.Call.ObjectCall">
            <summary>
            Summary description for ObjectCall.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.BizObjRules">
            <summary>
            Summary description for BizObjRules.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.BadRuleCallException">
            <summary>
            Generated when a general failure occurs when executing a business rule.</summary>
            <author>mdenman</author>
        </member>
        <member name="M:Swaf.BizRule.BadRuleCallException.#ctor(System.String)">
            <summary>Creates a new instance of BadRuleCallException</summary>
            <param name="ruleName"></param>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.FloatRangeValidator">
            <summary> The concrete FieldValidator derived class that validates
            that a floating point number (actually a 'double') is within a range.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FloatRangeValidator.reg(Swaf.BizObj.BizObjManager,System.String,System.String,System.Double,System.Double)">
            <summary>Registers the specified pattern as a validator.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FloatRangeValidator.#ctor(System.String,System.String,System.String)">
            <summary>Constructs a FloatRangeValidator using the specified name and params.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.FloatRangeValidator.#ctor(System.String,System.Double,System.Double)">
            <summary>Constructs a FloatRangeValidator using the specified min and max.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.FloatRangeValidator.min_">
            <summary>This is the minimum value of a valid floating point number.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.FloatRangeValidator.max_">
            <summary>This is the maximum value of a valid floating point number.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.basic.IndexedFullBizObjCursor">
            <summary>
            Summary description for IndexedFullBizObjCursor.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.basic.FullBizObjCursor">
            <summary>
            Summary description for FullBizObjCursor.
            </summary>
        </member>
        <member name="T:Swaf.Application">
            <summary>
            The pure C# full implementation of the <c>IApplication</c> and 
            <c>IAppManagement</c> interfaces of SWAF.</summary>
            <remarks>
            This class fully implements the interface and is the only implementation
            needed in a single user client application.  When being used in a multi-user
            environment such as <i>ASP</i> or <i>ASP.NET</i> this class is the application
            instance.  Individual "user sessions" would use a <c>SessionApp</c> instance
            in order to gain user specific <c>sessionData</c>.</remarks>
        </member>
        <member name="F:Swaf.Application.s_domainApp">
            <summary>
            Current implementation uses a static variable to house the domain specific
            Applicataion object.  Clients call the static create method to get that
            instance created.  A rewrite of this might store an instance of Application in
            the .NET AppDomain.CurrentDomain() storage to segment application objects
            by domain rather then C# static as done now.
            </summary>
        </member>
        <member name="M:Swaf.Application.setCurrentCulture(System.String)">
            <summary>
            Sets the current culture for this application instance by name.
            </summary>
            <param name="name"></param>
        </member>
        <member name="P:Swaf.Application.FrameworkVersion">
            <summary>
            Returns the current version number as major.minor.build.revision of the framework as defined in AssemblySharedInfo.cs
            </summary>
        </member>
        <member name="P:Swaf.Application.IsLoading">
            <summary>
            Returns a boolean indicating whether this instance of the Application is currently loading configurations.
            </summary>
        </member>
        <member name="P:Swaf.Application.culture">
            <summary>
            Gets/Sets the currently configured culture for this application instance
            </summary>
        </member>
        <member name="P:Swaf.Application.isValidSession">
            <summary>
            For the Global Application this should always return True.
            </summary>
        </member>
        <member name="T:Swaf.Application.FactoryConfigHandler">
            <summary>
            Handles ClassFactory defintions in the application configuration.
            </summary>
        </member>
        <member name="M:Swaf.Application.FactoryConfigHandler.executeBefore(Swaf.Config.IConfigElement)">
            <summary>
            Registers the new factory within the appData map and gets the parsing ready to 
            add entries to the factory.
            </summary>
            <param name="context"></param>
            <param name="configInfo"></param>
        </member>
        <member name="T:Swaf.Application.FactoryItemConfigHandler">
            <summary>
            Handles Class definitions in a specific factory definition
            </summary>
        </member>
        <member name="T:Swaf.Application.FactoryItemPatternConfigHandler">
            <summary>
            Handles Class definitions in a specific factory definition
            </summary>
        </member>
        <member name="T:Swaf.Application.FactoryItemDefaultConfigHandler">
            <summary>
            Handles Class definitions in a specific factory definition
            </summary>
        </member>
        <member name="T:Swaf.Application.FactoryItemCustomPropConfigHandler">
            <summary>
            Handles Class definitions in a specific factory definition
            </summary>
        </member>
        <member name="T:Swaf.Application.AppSesDataElementConfigHandler">
            <summary>
            Handles Application or Session data definitions, adding them to the real 
            application and session objects.
            </summary>
        </member>
        <member name="T:Swaf.Security.Role">
            <summary>
            The Role class is the single implementation of the IRole interface.
            </summary>
        </member>
        <member name="M:Swaf.Security.Role.#ctor(System.String)">
            <summary>
            Constructor for instantiating a role class.
            </summary>
            <param name="name"></param>
        </member>
        <member name="M:Swaf.Security.Role.#ctor(System.Xml.XmlElement)">
            <summary>
            Constructor for instantiating a role class from an Xml configuration or serialized role instance.
            </summary>
            <param name="ele"></param>
        </member>
        <member name="M:Swaf.Security.Role.#ctor(Swaf.Container.INameAddressSupport,System.String)">
            <summary>
            Constructor for instantiating a role from an INameAddressSupport instance (BizObj)
            </summary>
            <param name="source"></param>
        </member>
        <member name="P:Swaf.Security.Role.name">
            <summary>
            Returns the name of this role.
            </summary>
        </member>
        <member name="M:Ceridian.App.Main(System.String[])">
            <summary>
            The main entry point for the application.
            </summary>
        </member>
        <member name="T:Swaf.Messaging.ConnectionFactoryContainerNode">
            <summary>
            Summary description for ConnectionFactoryContainerNode.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "T:Swaf.DataAccess.MultiAdoNetDataRequest" -->
        <member name="M:Swaf.DataAccess.MultiAdoNetDataRequest.#ctor(System.Xml.XmlElement,Swaf.Container.XmlCatalogContainerNode.NameInfo)">
            <summary>
            Initializes this DAR based on the information provided.  This DAR requires a 
            XmlCatalogContainerNode.NameInfo to be passed as a parameter rather then just
            a simple string.  XmlCatalogContainerNode supports a constructor that takes 
            an XmlElement and either a string or a NameInfo.  Will also retrieve any 
            extension dars that exist and cache them into a member variable.</summary>
            <param name="req">The configuration information that defines the 
            instance.</param>
            <param name="catalogNameInfo">The NameInfo from the catalog that is used by
            this constructor to find its extensions.  Specifically, it uses the
            NameInfo.CatalogEntryName and NameInfo.EntryFeatureName in order to find
            them.</param>
        </member>
        <member name="M:Swaf.DataAccess.MultiAdoNetDataRequest.execute(System.Collections.IDictionary)">
            <summary>
            Execute the DAR as configured in the XmlElement given during construction
            </summary>
            <param name="info">An IDictionary of parameters to pass into the dar and
            to recieve any out parameters from the dar.</param>
            <returns>The IDataResponse of the main query or null if the DAR has
            no results</returns>
        </member>
        <member name="M:Swaf.DataAccess.MultiAdoNetDataRequest.execute(Swaf.Container.INameAddressSupport)">
            <summary>
            Will execute the base dar for this multidar dar.  If there is no response
            for this dar, then this method will execute all of the extension dars as
            well.</summary>
            <remarks>
            If the dar does as an IDataResonse, it will be of type MultiAdoNetDataResponse
            which will be given the list of extension dars.  The response
            object will execute the extension dars during its format processing.
            </remarks>
            <param name="info">An INameAddressSupport of parameters to pass into the
            dar and to recieve any out parameters from the dar.</param>
            <returns>The IDataResponse of the main query or null if the dar has
            no results.</returns>
        </member>
        <member name="T:Swaf.Container.CatalogEvents">
            <summary>
            Summary description for CatalogEvents.
            </summary>
        </member>
        <member name="P:Swaf.Container.CatalogEvents.EventHandlers">
            <summary>
            Property containing all the event handlers for catalog events
            </summary>
        </member>
        <member name="T:Swaf.Config.XmlTextReaderConfigElement">
            <summary>
            Summary description for XmlTextReaderConfigElement.
            </summary>
        </member>
        <member name="T:Swaf.Config.XmlElementConfigElement">
            <summary>
            Summary description for XmlElementConfigElement.
            </summary>
        </member>
        <member name="M:Swaf.BizRule.DefaultDynamicRuleRegistration.createInstance(System.Xml.XmlElement,System.String)">
            <summary>
            This is a ClassFactory that is used to handle the contents of a catalog item.  It will create the
            specified call type based on the provided BusinessRule definition.
            </summary>
            <param name="req">The contents of the catalog item.</param>
            <param name="catalogName">The name used to look up the catalog item.</param>
            <returns>A BasicRuleInfo that the RuleManager knows how to operate on.</returns>
        </member>
        <member name="M:Swaf.BizRule.DefaultDynamicRuleRegistration.defineRule(System.String)">
            <summary>
            The ICall implementation is used to dynamically define a business rule that is found in the
            BusinessRules catalog.  Since it is using a Catalog, the Catalog itself will provide any caching
            that is necessary for the result.
            </summary>
            <param name="ruleName">The name of the rule that is to be looked up.</param>
            <returns>The BasicRuleInfo that the was registered in the catalog.</returns>
        </member>
        <member name="T:Swaf.BizObj.xml.IXmlNodeParent">
            <summary>
            Summary description for IXmlNodeParent.
            </summary>
        </member>
        <member name="T:Swaf.Security.DynamicResourcesSecurityPrincipal">
            <summary>
            This is a basic implementation of the SecurityPrincipalBase that allows
            the additionalinfo to be changed during run time.  This is not intended to
            be used to switch the user context out, but rather to allow it to be updated
            with a new bizobj of the same user.  It also does not attempt to cache any
            of the resourceset information like the standard SecurityPrincipal
            implementation does.</summary>
            <remarks>
            Because the origional SecurityPrincipal implementation contains a cache
            of resources from its resourcesets, it made it difficult to change
            the privilege level of the resources and which resources were and 
            were not available to the user.  This implementation always goes into
            its resourcesets collection to get the privilege level for a requested
            resource.</remarks>
        </member>
        <member name="M:Swaf.Security.DynamicResourcesSecurityPrincipal.#ctor(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)">
            <summary>
            Constructor for instancing a default security principal from code
            </summary>
            <param name="UserName">The name of the user associated with this principal</param>
            <param name="additionalInfo">INameAddressSupport instance containing application 
            specific information about the principal</param>
            <param name="rolesCall">ICall instance used to retrieve the roles for a principal.</param>
        </member>
        <member name="M:Swaf.Security.DynamicResourcesSecurityPrincipal.#ctor(System.Xml.XmlElement)">
            <summary>
            Constructor used by the configuration system or to deserialize a serialized principal from an Xml node.
            </summary>
            <param name="ele">XmlNode containing information about the principal</param>
        </member>
        <member name="M:Swaf.Security.DynamicResourcesSecurityPrincipal.updateAdditionalInfo(Swaf.BizObj.IBizObj)">
            <summary>
            Allows the additional info to be updated after it was passed in during
            the constructor.</summary>
            <remarks>
            If an application provides a user interface for updating the additional info
            during runtime, this allows the application to adjust the information at
            runtime rather then making the user login/logoff to see the changes.</remarks>
            <param name="info">The new additional info to replace the existing one with.</param>
        </member>
        <member name="M:Swaf.Security.DynamicResourcesSecurityPrincipal.getPrivilege(System.String)">
            <summary>
            Implementation of abstract getPrivilige method from base class.  This implementation
            returns the privilege as defined in the requested ResourceSet.  If no privilege is
            found, Privileges.None is returned.
            </summary>
            <param name="resourceName">Fully qualified name of the requested resource (ResourceSet.Resource)</param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Interop.ApplicationInterop">
            <summary>
            Summary description for ApplicationInterop.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.OleDbHelper">
            <summary>
            Summary description for OleDbHelper.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.BizObjGroupContainerNode">
            <summary>
            Summary description for BizObjGroupContainerNode.
            </summary>
        </member>
        <member name="T:Swaf.Crypto.RandomStringGenerator">
            <summary>
            Generates a random string based on min and max length.
            </summary>
        </member>
        <member name="M:Swaf.Crypto.RandomStringGenerator.#ctor">
            <summary>
            Defaut Constructor for RandomStringGenerator
            </summary>
        </member>
        <member name="M:Swaf.Crypto.RandomStringGenerator.GetCryptographicRandomNumber(System.Int32,System.Int32)">
            <summary>
            Get a random number based on the lower and upper bound
            </summary>
        </member>
        <member name="M:Swaf.Crypto.RandomStringGenerator.GetRandomCharacter">
            <summary>
            Get a random character from the character array
            </summary>
        </member>
        <member name="M:Swaf.Crypto.RandomStringGenerator.Generate">
            <summary>
            Generate and return a random string
            </summary>
        </member>
        <member name="P:Swaf.Crypto.RandomStringGenerator.Exclusions">
            <summary>
            Characters to be excluded from random string
            </summary>
        </member>
        <member name="P:Swaf.Crypto.RandomStringGenerator.Minimum">
            <summary>
            The minimum length of generated string
            </summary>
        </member>
        <member name="P:Swaf.Crypto.RandomStringGenerator.Maximum">
            <summary>
            The maximum length of generated string
            </summary>
        </member>
        <member name="P:Swaf.Crypto.RandomStringGenerator.ExcludeSymbols">
            <summary>
            Exclude any symbols
            </summary>
        </member>
        <member name="P:Swaf.Crypto.RandomStringGenerator.RepeatCharacters">
            <summary>
            Allow repeating characters
            </summary>
        </member>
        <member name="P:Swaf.Crypto.RandomStringGenerator.ConsecutiveCharacters">
            <summary>
            Allow consecutive characters
            </summary>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.BaseInitialRequest">
            <summary>
            Summary description for BaseInitialRequest.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.PatternValidator">
            <summary> The concrete FieldValidator derived class that uses regular expressions.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.PatternValidator.#ctor(System.String,System.String,System.String)">
            <summary>Constructs a PatternValidator using the <em>(known good!!)</em> pattern and description.
            </summary>
            <param name="pattern">The pattern.  <em>Must</em> be a valid pattern (else any errors in the
            pattern will be logged to the log file, but the <c>PatternValidator</c> object will
            continue to exist!).
            
            </param>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.PatternValidator.myPattern_">
            <summary>This is the Pattern associated with 'this' validator.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.PatternValidator.myRegexp_">
            <summary>This is the compiled regular expression object associated with 'this' validator.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.PatternValidator.description_">
            <summary>This is the human-readable description of what the validator is expecting.
            E.g., "an identifier", "all uppercase letters", etc.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.OptionalValidator">
            <summary> The concrete FieldValidator that optionally uses
            an arbitrary FieldValidator (the Decorator Design Pattern).
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.OptionalValidator.create(System.String,System.String,System.String,System.String)">
            <summary>This should never be called.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.OptionalValidator.#ctor(System.String,Swaf.BizObj.fieldValidator.FieldValidator)">
            <summary>Constructs an OptionalValidator using the specified FieldValidator, 'inner'.
            </summary>
            <param name="s">the String that was parsed to produce <c>inner</c>.
            </param>
            <param name="inner">the FieldValidator that resulted from parsing <c>s</c>.
            
            </param>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.OptionalValidator.inner_">
            <summary>This is the Validator that is Optional.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.LengthValidator">
            <summary> The concrete FieldValidator derived class that validates the length of a string.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.LengthValidator.reg(Swaf.BizObj.BizObjManager,System.String,System.String,System.Int32,System.Int32)">
            <summary>Registers the specified pattern as a validator.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.LengthValidator.#ctor(System.String,System.String,System.String,System.String)">
            <summary>Constructs a LengthValidator using the specified name and params.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.LengthValidator.#ctor(System.String,System.Int32,System.Int32)">
            <summary>Constructs a LengthValidator using the specified min and max.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.LengthValidator.min_">
            <summary>This is the minimum length of a valid string.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.LengthValidator.max_">
            <summary>This is the maximum length of a valid string.
            </summary>
        </member>
        <member name="T:Swaf.Security.SecurityCredential">
            <summary>
            Provides access to member properties for a security credential.  Values stored 
            in this class are retained in memory in an encrypted format for security purposes.
            </summary>
        </member>
        <member name="T:Swaf.Security.PartneredResourceSet">
            <summary>
            Implements the IPartneredResourceSet to work in conjuntion with an 
            IResourceSetPartner object that will assist this class with maintaining
            its collection of resources.  This class can call to the IPartneredResource
            set to get its collection of resources or the IPartneredResourceSet can
            push changes into this object as it sees changes to the resources held
            within it.</summary>
        </member>
        <member name="F:Swaf.Security.PartneredResourceSet.m_name">
            <summary>
            The name of this resource set as needed by the IResourceSet interface.
            </summary>
        </member>
        <member name="F:Swaf.Security.PartneredResourceSet.m_dataPartner">
            <summary>
            The partner object that will get the list of resources for this 
            when needed.</summary>
        </member>
        <member name="F:Swaf.Security.PartneredResourceSet.m_isPopulated">
            <summary>
            Maintains if this has been initially populated with resources as
            needed by the IResourceSet interface.</summary>
        </member>
        <member name="F:Swaf.Security.PartneredResourceSet.m_resources">
            <summary>
            The resources that exist for this at any given time.  This collection
            can change dynamically.</summary>
        </member>
        <member name="M:Swaf.Security.PartneredResourceSet.#ctor(System.Xml.XmlElement)">
            <summary>
            This is the main way to create an instance of this class.  The element tells
            this resource set what its name is and where to find its config partner
            in the AOM.</summary>
            <param name="configuration">The XmlElement with the needed information
            this can optionally contain 2 attributes
            name - the name of the resource set.
            configPartnerPath - the location in the AOM of this object's config partner</param>
        </member>
        <member name="M:Swaf.Security.PartneredResourceSet.#ctor(Swaf.Security.PartneredResourceSet)">
            <summary>
            Used by clone to make a copy of an instance</summary>
            <param name="copy"></param>
        </member>
        <member name="M:Swaf.Security.PartneredResourceSet.clone">
            <summary>
            Creates a new instances of this resource set
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.PartneredResourceSet.getBizObjList">
            <summary>
            <see cref="M:Swaf.Security.IResourceSet.getBizObjList"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.PartneredResourceSet.resourceCall">
            <summary>
            This method is not implemented for this class because it gets its resource from its IResourcePartner
            </summary>
        </member>
        <member name="P:Swaf.Security.PartneredResourceSet.resourceCallXml">
            <summary>
            
            </summary>
        </member>
        <member name="P:Swaf.Security.PartneredResourceSet.resources">
            <summary>
            This method is not implemented for this class because it gets its resource from its IResourcePartner
            </summary>
        </member>
        <member name="T:Swaf.Logging.DebugLogObserver">
            <summary>
            Summary description for DebugLogObserver.
            </summary>
        </member>
        <member name="T:Swaf.Gui.ChildInfo">
            <summary>
            Summary description for ChildInfo.
            </summary>
        </member>
        <member name="T:Swaf.Container.ThreadSafeHashtable">
            <summary>
            Summary description for ThreadSafeHashtable.
            </summary>
        </member>
        <member name="P:Swaf.Container.ThreadSafeHashtable.AccessSem">
            <summary>
            This method should be efficently thread safe.  
            </summary>
        </member>
        <member name="T:Swaf.Container.CatalogException">
            <summary>
            Summary description for CatalogException.
            </summary>
        </member>
        <member name="T:Swaf.Config.XmlPath">
            <summary>A simple class that has an array of file paths to locate the xml files used
            for application configuration.</summary>
            <author>Matthew Denman</author>
        </member>
        <member name="F:Swaf.Config.XmlPath.Paths">
            <summary>The path (a list of directories) used to search for XML files.</summary>
            <remarks>
            <p>Each installation can and should change this list to suit their needs.</p>
            <p>Note: put a "," at the end of each directory name.</p>
            </remarks>
        </member>
        <member name="T:Swaf.Call.RemotingRuleMgrCall">
            <summary>
            Summary description for RuleMgrCall.
            </summary>
        </member>
        <member name="T:Swaf.Call.RemotingRuleException">
            <summary>
            RemotingRuleException thrown when a exception occurs calling a remote rule
            </summary>
        </member>
        <member name="M:Swaf.Call.RemotingRuleException.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:Swaf.Call.RemotingRuleException.#ctor(System.String)">
            <summary>
            Standard message constructor
            </summary>
            <param name="message"></param>
        </member>
        <member name="M:Swaf.Call.RemotingRuleException.#ctor(System.String,System.Exception)">
            <summary>
            Standard message constructor with an inner exception
            </summary>
            <param name="message"></param>
            <param name="innerException"></param>
        </member>
        <member name="M:Swaf.Call.RemotingRuleException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Deserialization constructor
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="T:Swaf.Call.MessagingRuleMgrCall">
            <summary>
            Summary description for RuleMgrCall.
            </summary>
        </member>
        <member name="T:Swaf.Call.CallbackQueueCall">
            <summary>
            Summary description for CallbackQueueCall.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.RuleManager">
            <summary>
            The main class for calling business rules for the application that is conceptually
            both a <i>facade</i> and a <i>proxy</i> for clients to execute business rules
            that supports both synchronous and asynchronous calls.</summary>
            <author>mdenman</author>
        </member>
        <member name="M:Swaf.BizRule.RuleManager.#ctor(Swaf.IApplication)">
            <summary>Creates a new instance of RuleManager 
            </summary>
        </member>
        <member name="M:Swaf.BizRule.RuleManager.addMonitor(Swaf.BizRule.IRuleMonitor)">
            <summary>
            Add a rule monitor to listen for rule execution events as the <c>RuleManager</c>
            executes rules and specific events occur during execution.</summary>
            <param name="monitor"></param>
        </member>
        <member name="M:Swaf.BizRule.RuleManager.removeMonitor(Swaf.BizRule.IRuleMonitor)">
            <summary>
            Removes the rule monitor from listening to rule execution events.</summary>
            <param name="monitor"></param>
        </member>
        <member name="M:Swaf.BizRule.RuleManager.stop(Swaf.IApplication)">
            <summary>
            Stops rule processing and shutsdown its <c>IRuleQueue</c> object, which means that
            no more rules will be executed via calls to <c>execute</c>.</summary>
            <remarks>
            This method should only be called when the application using the <c>RuleManager</c>
            is shutting down.</remarks>
        </member>
        <member name="T:Swaf.BizRule.RuleManager.DynamicRuleRegistrationHandler">
            <summary>
            Configuration handler to configure ICall that will dynamically load rule 
            definitions.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.CallRulesBizRule">
            <summary>
            Summary description for CallRulesBizRule.
            </summary>
        </member>
        <member name="M:Swaf.BizRule.CallRulesBizRule.processCallInfo(System.String)">
            <summary>
            This is the main logic that takes a formatted string of rule calls and parses it for easy
            calls to ruleMgr.execute.
            </summary>
            <remarks>This methods currently only accepts a name/value pair formatted in the W3C Form Data Set standard.
            <a href="http://www.w3.org/MarkUp/html-spec/html-spec_8.html">Here</a></remarks>
            <param name="callInfo"></param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Security.ResourceSet">
            <summary>
            Provides the basic implementation of the IResourceSet interface.  ResourceSets
            are simply a named list of resources.
            </summary>
        </member>
        <member name="M:Swaf.Security.ResourceSet.init">
            <summary>
            Sets the value of the static s_Pass_Sec_Principal field.  Called from constructors 
            </summary>
        </member>
        <member name="M:Swaf.Security.ResourceSet.#ctor(System.String,Swaf.Call.ICall)">
            <summary>
            Constructor used to instantiate a ResourceSet via code.
            </summary>
            <param name="name">Application unique name for this resourceset</param>
            <param name="resourceCall">ICall instance to be used to load resources 
            into this resourceset</param>
        </member>
        <member name="M:Swaf.Security.ResourceSet.#ctor(System.Xml.XmlElement)">
            <summary>
            Constructor used by the configuration system or to deserialize a serialized 
            ResourceSet from an Xml node.  The passed in node can also contain resource
            definitions to prepopulate the resourceset.
            </summary>
            <param name="ele">XmlNode containing information about the ResourceSet</param>
        </member>
        <member name="M:Swaf.Security.ResourceSet.clone">
            <summary>
            			<see cref="M:Swaf.Security.IResourceSet.clone"/>
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceSet.clone(System.Boolean)">
            <summary>
            <see cref="M:Swaf.Security.IResourceSet.clone"/>
            </summary>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceSet.populateResources">
            <summary>
            <see cref="M:Swaf.Security.IResourceSet.populateResources"/>
            </summary>
        </member>
        <member name="M:Swaf.Security.ResourceSet.populateResources(Swaf.Container.INameAddressSupport)">
            <summary>
            <see cref="M:Swaf.Security.IResourceSet.populateResources"/>
            </summary>
        </member>
        <member name="M:Swaf.Security.ResourceSet.addInfoForPopulateResources(Swaf.Container.INameAddressSupport)">
            <summary>
            This method can/should be overridden by derived classes that need to add more values to additionalInfo before 
            populateResources is called.
            </summary>
            <param name="additionalInfo"></param>
        </member>
        <member name="M:Swaf.Security.ResourceSet.tryToAddField(Swaf.Container.INameAddressSupport,System.String,System.Object,System.Boolean)">
            <summary>
            Helper method to try and set a specified field value in additionalInfo.  Works for both BizObj and FlexiMaps.
            </summary>
            <param name="additionalInfo">INameAddressSupport instance to add to.</param>
            <param name="fieldName">Field to add</param>
            <param name="value">Field value</param>
        </member>
        <member name="M:Swaf.Security.ResourceSet.populateResourcesFromList(System.Collections.IEnumerable)">
            <summary>
            <see cref="M:Swaf.Security.IResourceSet.populateResourcesFromList(System.Collections.IEnumerable)"/>
            </summary>
            <param name="source"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceSet.getBizObjList">
            <summary>
            <see cref="M:Swaf.Security.IResourceSet.getBizObjList"/>
            </summary>
        </member>
        <member name="M:Swaf.Security.ResourceSet.containsField(System.String)">
            <summary>
            <see cref="M:Swaf.Container.INameAddressSupport.containsField(System.String)"/>
            </summary>
            <param name="nameAddress"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceSet.put(System.String,System.Object,System.Object)">
            <summary>
            <see cref="M:Swaf.Container.INameAddressSupport.put(System.String,System.Object)"/>
            </summary>
            <param name="nameAddress"></param>
            <param name="val"></param>
            <param name="extraInfo"></param>
        </member>
        <member name="M:Swaf.Security.ResourceSet.Swaf#Container#INameAddressSupport#put(System.String,System.Object)">
            <summary>
            <see cref="M:Swaf.Container.INameAddressSupport.put(System.String,System.Object)"/>
            </summary>
            <param name="nameAddress"></param>
            <param name="val"></param>
        </member>
        <member name="M:Swaf.Security.ResourceSet.getXml(System.String)">
            <summary>
            <see cref="M:Swaf.Container.INameAddressSupport.getXml(System.String)"/>
            </summary>
            <param name="options"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceSet.get(System.String)">
            <summary>
            <see cref="M:Swaf.Container.INameAddressSupport.get(System.String)"/>
            </summary>
            <param name="nameAddress"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceSet.Swaf#Container#INameAddressSupport#get(System.String,System.Object)">
            <summary>
            <see cref="M:Swaf.Container.INameAddressSupport.get(System.String)"/>
            </summary>
            <param name="nameAddress"></param>
            <param name="oneArg"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.ResourceSet.Swaf#Container#INameAddressSupport#get(System.String,System.Object[])">
            <summary>
            <see cref="M:Swaf.Container.INameAddressSupport.get(System.String)"/>
            </summary>
            <param name="nameAddress"></param>
            <param name="infoArgs"></param>
            <returns></returns>
        </member>
        <member name="P:Swaf.Security.ResourceSet.isPopulated">
            <summary>
            <see cref="P:Swaf.Security.IResourceSet.isPopulated"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceSet.resources">
            <summary>
            <see cref="P:Swaf.Security.IResourceSet.resources"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceSet.resourceCall">
            <summary>
            <see cref="P:Swaf.Security.IResourceSet.resourceCall"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceSet.resourceCallXml">
            <summary>
            <see cref="P:Swaf.Security.IResourceSet.resourceCallXml"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceSet.name">
            <summary>
            <see cref="P:Swaf.Security.IResourceSet.name"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceSet.isGetOnly">
            <summary>
            <see cref="P:Swaf.Container.INameAddressSupport.isGetOnly"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceSet.SerializationSupport">
            <summary>
            <see cref="P:Swaf.Container.INameAddressSupport.SerializationSupport"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.ResourceSet.Xml">
            <summary>
            <see cref="P:Swaf.Container.INameAddressSupport.Xml"/>
            </summary>
        </member>
        <member name="T:Swaf.Gui.GenericAction">
            <summary>
            Summary description for GenericAction.
            </summary>
        </member>
        <member name="M:Swaf.Gui.GenericAction.#ctor(System.String,System.Boolean,Swaf.Gui.ActionTrigger,Swaf.Gui.IBusinessProcess)">
            <summary>
            Initialzes the action with no state or params.  This is the most basic configuration this object
            can have.
            </summary>
            <param name="name"></param>
            <param name="enabled"></param>
            <param name="basicTrigger"></param>
        </member>
        <member name="M:Swaf.Gui.GenericAction.#ctor(System.String,System.Boolean,System.String,Swaf.Gui.ActionTrigger,System.String[])">
            <summary>
            Initializes the action to support states but not params.
            </summary>
            <param name="name"></param>
            <param name="enabled"></param>
            <param name="currentState"></param>
            <param name="operationStates"></param>
        </member>
        <member name="M:Swaf.Gui.GenericAction.#ctor(System.String,System.Boolean,System.Boolean,Swaf.Gui.ActionParamTrigger,System.Object[])">
            <summary>
            Initialzes the action to support trigger parameters but not states.
            </summary>
            <param name="name"></param>
            <param name="enabled"></param>
            <param name="allowOpenParams"></param>
            <param name="validParams"></param>
        </member>
        <member name="M:Swaf.Gui.GenericAction.#ctor(System.String,System.Boolean,System.Boolean,Swaf.Gui.IBusinessProcess,Swaf.Gui.ActionParamTrigger,System.Object[])">
            <summary>
            Initialzes the action to support trigger parameters but not states.
            </summary>
            <param name="name"></param>
            <param name="enabled"></param>
            <param name="allowOpenParams"></param>
            <param name="validParams"></param>
        </member>
        <member name="T:Swaf.Container.FlexiMap">
            <summary>
            Summary description for FlexiMap.
            </summary>
        </member>
        <member name="M:Swaf.Compression.CompressionClassFactory.GetGZipStream(System.IO.Stream,System.Boolean,System.Boolean)">
            <summary>
            Factory to create a GZipStream
            </summary>
            <param name="stream">The stream that will be compressed or decompressed</param>
            <param name="forCompression">Indicates whether Compression or Decompress will occur</param>
            <param name="keepInnerStreamOpen">Denote whether to keep the compressed/decompressed stream open or not</param>
            <returns>Instance of the GZipStream</returns>
        </member>
        <member name="M:Swaf.Compression.CompressionClassFactory.GetDeflateStream(System.IO.Stream,System.Boolean,System.Boolean)">
            <summary>
            Factory to create a DeflateStream
            </summary>
            <param name="stream">The stream that will be compressed or decompressed</param>
            <param name="forCompression">Indicates whether Compression or Decompress will occur</param>
            <param name="keepInnerStreamOpen">Denote whether to keep the compressed/decompressed stream open or not</param>
            <returns>Instance of the DeflateStream</returns>
        </member>
        <member name="T:Swaf.BizRule.BadRuleNameException">
            <summary>
            Generated when a client attempts to reference a business rule that was not
            defined in the application configuration for business rules.</summary>
            <author>mdenman</author>
        </member>
        <member name="M:Swaf.BizRule.BadRuleNameException.#ctor">
            <summary> Creates a new instance of <c>BadRuleNameException</c> without detail message.
            </summary>
        </member>
        <member name="M:Swaf.BizRule.BadRuleNameException.#ctor(System.String)">
            <summary>
            Constructs an instance of <c>BadRuleNameException</c> with the specified detail message.
            </summary>
            <param name="msg">the detail message.
            
            </param>
        </member>
        <member name="T:Swaf.Scheduler.BaseScheduleTask">
            <summary>
            </summary>
        </member>
        <member name="T:Swaf.Messaging.MessagingListenerManager">
            <summary>
            Summary description for MsgManager.
            </summary>
        </member>
        <member name="T:Swaf.Logging.Audit">
            <summary>
            Summary description for Audit.
            </summary>
        </member>
        <member name="M:Swaf.Logging.Audit.write(Swaf.Container.INameAddressSupport)">
            <summary>
            
            </summary>
            <param name="info"></param>
        </member>
        <member name="M:Swaf.Logging.Audit.write(System.String,System.Object,System.Object)">
            <summary>
            
            </summary>
            <param name="eventId"></param>
            <param name="data1"></param>
            <param name="data2"></param>
        </member>
        <member name="M:Swaf.Logging.Audit.notifyObservers(System.Collections.IDictionary)">
            <summary>
            Overriden to ensure that Audit calls are synchronous.  Audit needs to be guaranteed
            delivery.  The observer should ensure this and the notifiyObservers is being overridden
            to call the observers directly rather than through a queue.  if Observers can't be called
            the issue has to bubble up to the calling application.
            </summary>
            <param name="info"></param>
        </member>
        <member name="T:Swaf.DataAccess.WebServiceRequest">
            <summary>
            Summary description for WebServiceRequest.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.DecoratedDataRequest">
            <summary>
            This is a new implementation of the IDataRequest interface that can wrap any other
            IDataRequest implementation and provide decorator support for it.</summary>
            <remarks>
            This class uses the "DarDecorators" class factory to create all the decorators
            added to the DAR definition.
            
            This class uses the "DataRequestTypes" class factory to create all the actual
            decorators that this wrapper is applied to.
            
            This class assumes that when the INameAddressSupport.get or put is called
            with an IDictionary or INameAddressSupport, that the execute and format process
            should occur, which is the standard way all IDataRequest implementations should
            operate.  This class implements the get so that the preExecute, postExecute and
            postFormat methods of the IDarDecorator will be called properly.
            
            This class expects all decorators to be applied to the root node and that
            the name of the decorators can be found in the "DarDecorators" factory.  Also,
            no decorator name should conflict with standard attributes of the DAR 
            being wrapped/decorated.  If there is an overlap, the value of the attribute
            needs to follow the standards of the wrapped/decorated DAR.  For example, the
            DbDataRequest DAR already has a connection attribute.  If a connection
            decorator is provided, it should allow its value to be that supported by 
            the DbDataRequest.  It is best to use names not support by any DAR already
            to avoid conflicts like that.</remarks>
        </member>
        <member name="M:Swaf.DataAccess.DecoratedDataRequest.#ctor(System.Xml.XmlElement,Swaf.Container.XmlCatalogContainerNode.NameInfo)">
            <summary>
            Processes all of the decorators found as attributes on the root element 
            of the catalog entry and then creates the wrapped/decorated dar by stripping
            "decorated" off the root element name and use the DataRequestTypes class
            factory.</summary>
            <param name="req">The XML catalog entry for DAR configuration.</param>
            <param name="nameInfo">The name used for the catalog.</param>
        </member>
        <member name="M:Swaf.DataAccess.DecoratedDataRequest.#ctor(System.Xml.XmlElement,System.String)">
            <summary>
            Processes all of the decorators found as attributes on the root element 
            of the catalog entry and then creates the wrapped/decorated dar by stripping
            "decorated" off the root element name and use the DataRequestTypes class
            factory.</summary>
            <param name="req">The XML catalog entry for DAR configuration.</param>
            <param name="catalogName">The name used for the catalog.</param>
        </member>
        <member name="M:Swaf.DataAccess.DecoratedDataRequest.execute(Swaf.Container.INameAddressSupport)">
            <summary>
            Does the pre and post execute decorator calls and calls the inner DAR to do its
            work.</summary>
        </member>
        <member name="M:Swaf.DataAccess.DecoratedDataRequest.execute(System.Collections.IDictionary)">
            <summary>
            Wrapps the IDictionary with an INameAddressSupport and calls
            this.execute(INameAddressSupport) version of the method.</summary>
        </member>
        <member name="M:Swaf.DataAccess.DecoratedDataRequest.get(System.String,System.Object[])">
            <summary>
            The main implementation used by all others that will do the execute
            and format.  After data format for the DAR, the postExecute method of
            all standin decorators is executed.</summary>
        </member>
        <member name="T:Swaf.DataAccess.MsOracleHelper">
            <summary>
            Summary description for MsOracleHelper.
            </summary>
        </member>
        <member name="M:Swaf.DataAccess.MsOracleHelper.allowParamOutputMapping(System.Data.IDataParameterCollection,System.String)">
            <summary>
            Enables the helper to keep a parameter type from being mapped as an output parameter
            </summary>
            <param name="parameters"></param>
            <param name="paramName"></param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Call.DataModelCall">
            <summary>
            Uses IApplication.appData and IApplication.sessionData as root elements in a 
            INameAddress data model tree.
            </summary>
            <remarks></remarks>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.WorkerRuleContext">
            <summary>
            Summary description for WorkerRuleContext.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.BasicRuleGroup">
            <summary>
            Summary description for BasicRuleGroup.
            </summary>
        </member>
        <member name="M:Swaf.BizRule.ThreadedQueue.BasicRuleGroup.waitForCompletion(System.Boolean)">
            <summary>
            This method can wait.
            </summary>
            <remarks>This method is designed to have many threads call into it concurrently.  If rules in the 
            depth specified as still running, this method will block all callers to this method.  As soon the 
            more rules are executing again, the semaphore is locked and calls block again.
            <p>This method attempts to avoid using the semaphores for blocking unless absolutely necessary.
            If there are no rules running, it wont try to block on it.  If there are rules, it will attempt
            to block on the given semaphore type and then</p></remarks>
            <param name="deepWait"></param>
        </member>
        <member name="T:Swaf.BizObj.xml.XmlDependentBizObj">
            <summary> Maintains a reference to its parent <c>XmlBusinessObjectIList</c> to get the
            <i>current element</i> of the list for the data store of its properties.
            *
            </summary>
            <author>  mdenman
            
            </author>
        </member>
        <member name="M:Swaf.BizObj.xml.XmlDependentBizObj.#ctor(Swaf.BizObj.IBizObjDefinition,Swaf.BizObj.xml.IXmlNodeParent)">
            <summary>Creates a new instance of XmlIListBusinessObject 
            </summary>
        </member>
        <member name="T:Swaf.BizObj.xml.XmlBusinessObject">
            <summary> Maintains its own XML <c>org.dom4j.Element</c> for the data store of its
            properties.
            *
            </summary>
            <author>  mdenman
            
            </author>
        </member>
        <member name="M:Swaf.BizObj.xml.XmlBusinessObject.#ctor(Swaf.BizObj.IBizObjDefinition,System.Xml.XmlElement)">
            <summary>Creates a new instance of XmlBusinessObject 
            </summary>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.ReadOnlyOn">
            <summary>
            Summary description for ReadOnlyOn.
            </summary>
        </member>
        <member name="T:Swaf.Versioning.BaseVersioningPartner">
            <summary>
            This class provides the base implementation of the VersioningPartner.  VersioningPartner works
            in conjuction with VersioningDictionaries to provide a context sensitive mapping of requested keys
            to versioned keys (i.e. DBCalcs --> DBCalcs::Signature::0401).
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.registerForConfig(Swaf.Config.IConfigManager)">
            <summary>
            This method is called by the ConfigManager at the beginning of the loading of the Config file.
            </summary>
            <param name="config"></param>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.checkConfigStatus">
            <summary>
            This method is called by the ConfigManager once the configuration file is completely loaded.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.resolve(Swaf.IApplication,System.String)">
            <summary>
            This method uses context information to resolve the provided key into a version key.
            An example of the expected behavior of this method would be when provided with the key "DBCalcs"
            the system would look at the current company to see that they are on the Signature payroll engine
            at the district the company is in and see that it is on version 0401 of signature code and build a 
            resulting string that looked like DBCalcs::Signature::0401.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.resolve(System.String)">
            <summary>
            This version of the resolve method will go away since it is not valid to call resolve without an
            application context.  Doing so uses the master applicaiton object which does not have session context 
            information.  Users should use the overloaded version of this method which allows the app object to be
            passed in as a parameter.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.resolve(Swaf.IApplication,System.String,System.String)">
            <summary>
            This overloaded version of resolve allows an additional parameter to be passed in to allow
            resolve to behave differently based on the call context.
            </summary>
            <param name="app"></param>
            <param name="key"></param>
            <param name="callContext"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.resolve(System.String,System.String)">
            <summary>
            This overloaded version of resolve allows an additional parameter to be passed in to allow
            resolve to behave differently based on the call context.
            </summary>
            <param name="key"></param>
            <param name="callContext"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.resolvePath(Swaf.IApplication,System.String)">
            <summary>
            This method uses context information combined with the base path passed in to
            build a search path.
            </summary>
            <param name="app"></param>
            <param name="basePath"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.resolvePath(Swaf.IApplication,System.String,System.String)">
            <summary>
            This overloaded version of resolvePath allows an additional parameter to be passed in to allow
            resolvePath to behave differently based on the call context.
            </summary>
        </member>
        <member name="M:Swaf.Versioning.BaseVersioningPartner.resolvePath(System.String,System.String)">
            <summary>
            This overloaded version of resolvePath allows an additional parameter to be passed in to allow
            resolvePath to behave differently based on the call context.
            </summary>
        </member>
        <member name="P:Swaf.Versioning.BaseVersioningPartner.IsConfigLoading">
            <summary>
            This property returns true if the system is in the process of loading the configuration file.  The versioning dictionaries
            use this method to determine how to look to see if a value already exists or not.
            </summary>
        </member>
        <member name="T:Swaf.Semaphore">
            <summary>
            A general purpose counting semaphore class that works in ways not directly
            available from the <c>System.Threading</c> namespace.
            </summary>
        </member>
        <member name="T:Swaf.Security.SessionSecurityManager">
            <summary>
            The SessionSecurityManager is a specialized implementation of the ISecurityManager 
            interface geared specifically to the lightweight SessionApplication objects.  This 
            security manager implementation contains its own ISecurityPrincipal instance and 
            otherwise, simply passes through to the global security manager instance on the 
            Application object.
            </summary>
        </member>
        <member name="M:Swaf.Security.SessionSecurityManager.#ctor">
            <summary>
            Default constructor for class
            </summary>
        </member>
        <member name="M:Swaf.Security.SessionSecurityManager.createPrincipal(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)">
            <summary>
            <see cref="M:Swaf.Security.ISecurityManager.createPrincipal(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)"/>
            </summary>
            <param name="UserName"></param>
            <param name="additionalInfo"></param>
            <param name="rolesCall"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SessionSecurityManager.createPrincipal(Swaf.Container.INameAddressSupport)">
            <summary>
            <see cref="M:Swaf.Security.ISecurityManager.createPrincipal(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)"/>
            </summary>
            <param name="principalInfo"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SessionSecurityManager.createPrincipal(System.Xml.XmlElement)">
            <summary>
            <see cref="M:Swaf.Security.ISecurityManager.createPrincipal(System.String,Swaf.Container.INameAddressSupport,Swaf.Call.ICall)"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.SessionSecurityManager.currentPrincipal">
            <summary>
            Returns the session level current security principal
            </summary>
        </member>
        <member name="P:Swaf.Security.SessionSecurityManager.resourceSets">
            <summary>
            <see cref="P:Swaf.Security.ISecurityManager.resourceSets"/>
            </summary>
        </member>
        <member name="T:Swaf.Resource.PatternRepository">
            <summary>Parses a <em>Pattern</em> into a "regular expression".</summary>
            <remarks>
            <p>Grammar:
            <ul>
            <li>A <em>Pattern</em> is an <em>Alternation</em>.</li>
            <li>An <em>Alternation</em> is one or more <em>Sequences</em>, separated by a <c>|</c>.</li>
            <li>A <em>Sequence</em> is zero or more <em>Atoms</em>, not separated by anything.</li>
            <li>An <em>Atom</em> is one of the following:
            <ul>
            <li>A <em>Simple-Keyword</em>: a <c>{</c>, a keyword name, then a <c>}</c>.</li>
            <li>A <em>Composite Keyword</em>: a <c>{</c>, a keyword name, a space, an <em>Alternation</em>, then a <c>}</c>.</li>
            <li>A <em>Memo</em>: a <c>(</c>, an <em>Alternation</em>, then a <c>)</c>.</li>
            <li>A <em>Character Literal</em>: any character other than <c>(</c>, <c>)</c>, <c>{</c>, or <c>}</c>.</li>
            </ul>
            </li>
            </ul>
            </p><p>
            The main thing this class does is to translate <em>Patterns</em> into
            <em>Perl5 Regular Expressions</em>.  The following is a (greatly) simplified version
            of the <em>Perl5 Regular Expression</em> grammar:
            <ul>
            <li>A <em>Regexp</em> is an <em>RE-Alternation</em>.</li>
            <li>An <em>RE-Alternation</em> is one or more <em>RE-Sequences</em>, separated by a <c>|</c>.</li>
            <li>An <em>RE-Sequence</em> is zero or more <em>RE-Atoms</em>, not separated by anything.</li>
            <li>An <em>RE-Atom</em> is one of a gazillion things (too many to list here).</li>
            </ul>
            </p><p>
            Perhaps the most important issue with respect to Perl5 Regular Expressions
            is the concept of <em>Loopable</em>:
            <ul>
            <li>Every <em>Loopable</em> fragment is an <em>RE-Atom</em>,
            but not every <em>RE-Atom</em> is <em>Loopable</em> fragment.</li>
            <li>A Perl5 Regular Expression fragment held in the <c>String</c> <c>a</c>
            is <em>Loopable</em> if and only if the string <c>a+"*"</c> would put a loop
            around the entire pattern contained in <c>a</c> (that is, if <c>a+"*"</c>
            is equivalent to <c>"(?:"+a+")*"</c>).</li>
            </ul>
            </p></remarks>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.LOOPABLE">
            <summary>Indicates the complexity of a regular expression.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.knownGoodPattern(System.String)">
            <summary>Returns the Regex object associated with the specified regular expression <c>pattern</c>,
            string, but if <c>pattern</c> has errors, it does <em>not</em> throw an exception.
            This is used only when the caller is <em>sure</em> that the <c>pattern</c> is valid,
            typically when the <c>pattern</c> is a string literal.
            If there is an error in <c>pattern</c>, it puts a message in the log file.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.patternErrorMessage(System.String)">
            <summary>Returns a human-readable explanation of what's wrong with the pattern,
            or returns null if the pattern is a valid regular expression.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.getPattern(System.String)">
            <summary>Returns the <c>Pattern</c> object that corresponds to the <em>Pattern</em> in <c>pattern</c>.</summary>
            <remarks>
            <p>Postcondition:
            <ul>
            <li><c>get(p).pattern()</c> will be the same as <c>p</c>, the parameter <em>Pattern</em>.</li>
            <li><c>get(p).regexpString()</c>: the <em>Perl5 Regular Expression</em> in
            <c>String</c> form. E.g., all the <c>{keywords}</c> in <c>get(p).pattern()</c>
            will have been converted to the equivalent <em>Perl5 Regular Expression</em> format.</li>
            
            <li><c>get(p).regexpObject()</c>: the compiled <em>Perl5 Regular Expression</em> in binary form.</li>
            <li><c>get(p).complexity()</c>:
            <c>LOOPABLE</c> if/only-if <c>get(p).regexpString()</c> is <em>Loopable</em>,
            <c>SEQUENCE</c> if/only-if <c>get(p).regexpString()</c> is an <em>RE-Sequence</em>, or
            <c>ALTERNATION</c> if/only-if <c>get(p).regexpString()</c> is an <em>RE-Alternation</em>.</li>
            </ul>
            </p></remarks>
            <param name="pattern">the string containing the <em>Pattern</em>
            (e.g., it is allowed to contain <c>{keywords}</c>).</param>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.registerComposite(System.String,System.String,System.String,System.Int32,System.Int32)">
            <summary>
            Registers a <em>Composite-Keyword</em> to be replaced by the specified "regular expressions".</summary>
            <param name="keywordRegexp">the <em>Perl5 Regular Expression</em> that represents the <em>inside</em> of the keyword.
            This must <em>not</em> include the opening "{", but it should include the
            " " that separates the keyword itself from the "child" pattern.
            E.g., the parameter for <em>Composite-Keyword</em> <c>{optional </c>
            must be <c>"optional "</c>, not <c>"\\{optional "</c>.
            </param>
            <param name="prefixRegexp"> A portion of the <em>Perl5 Regular Expression</em> that replaces this keyword.
            In particular, it is the fragment of the replacement that is to be inserted before the child's regexp.
            Example: for <em>Composite-Keyword</em> <c>{group ___}</c>, this would be <c>"(?:"</c>.
            Must not be <c>null</c>.
            </param>
            <param name="suffixRegexp">
            A portion of the <em>Perl5 Regular Expression</em> that replaces this keyword.
            In particular, it is the fragment of the replacement that is to be inserted after the child's regexp.
            Example: for <em>Composite-Keyword</em> <c>{group ___}</c>, this would be <c>")"</c>.
            Must not be <c>null</c>.
            </param>
            <param name="childType">indicates what the "child" pattern must be.
            Must one of these:
            <ul>
            <li><c>NONE</c> if there is no child to be parsed;</li>
            <li><c>LOOPABLE</c> if there must be a child and it must be a LOOPABLE;</li>
            <li><c>ANY</c> if there must be a child but it doesn't have to be LOOPABLE.</li>
            </ul>
            </param>
            <param name="complexity">indicates the complexity of the resulting <em>Perl5 Regular Expression</em>.
            Must be one of these:
            <ul>
            <li><c>LOOPABLE</c> if/only-if the resulting regexp is <em>Loopable</em>.</li>
            <li><c>SEQUENCE</c> if/only-if the resulting regexp is an <em>RE-Sequence</em>.</li>
            <li><c>ALTERNATION</c> if/only-if the resulting regexp is an <em>RE-Alternation</em>.</li>
            </ul>
            </param>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.registerSimple(System.String,System.String,System.Boolean)">
            <summary>Registers a <em>Simple-Keyword</em> to be replaced by the specified <em>Pattern</em>.
            </summary>
            <param name="keywordPattern">the <em>Pattern</em> of the <em>inside</em> of the keyword.
            This must <em>not</em> include the opening "{" or the trailing "}".
            E.g., the parameter for <em>Simple-Keyword</em> <c>{identifier}</c>
            must be <c>"identifier"</c>, not <c>"{identifier}"</c>.
            </param>
            <param name="replacePattern">the <em>Pattern</em> that replaces this keyword.
            Since this is a <em>Pattern</em>, it can contain <c>{keywords}</c>
            (as opposed to <em>Perl5 Regular Expression</em> characters).
            E.g., for <em>Simple-Keyword</em> <c>{identifier}</c>, this would be
            <c>"{letter|_}{0+ {letter|digit|_}}"</c>.
            Must not be <c>null</c>.
            </param>
            <param name="throwOnError">If <c>true</c>, throws a <c>BadPattern</c> when <c>replacePattern</c> has an error.
            If <c>false</c>, uses the return value to indicate whether or not there was an error (see "Returns", below).
            </param>
            <returns><c>null</c> on success, otherwise, if <c>throwOnError==false</c>,
            returns a human-readable error message describing what went wrong.
            
            </returns>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.patterns_">
            <summary>
            Maps from a <em>Pattern</em> string to the corresponding <c>Pattern</c> object.</summary>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.m_keywords">
            <summary>The list of all Keyword objects in the order in which they were registered.</summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.compileRegexp(System.String)">
            <summary>Compiles the specified <em>Perl5 Regular Expression</em>.
            @throws BadPattern if <c>regexp</c> was an invalid <em>Perl5 Regular Expression</em>.
            </summary>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.complexityMap_">
            <summary>Maps from the name of the "complexity" constant to the constant itself
            (that is, one of LOOPABLE, SEQUENCE, ALTERNATION, NONE, or ANY).
            </summary>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.noisy">
            <summary>Determines whether or not the PatternRepository displays status on the log-file.
            </summary>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.loopOptimizations_">
            <summary>Maps from a "dumb" loop-of-loop (e.g., "(?x+)?") to a "smart" replacement (e.g., "x*").
            Important: the 'smart' one must begin with 'x' and end with whatever.
            </summary>
        </member>
        <member name="T:Swaf.Resource.PatternRepository.BadPattern">
            <summary>This gets thrown whenever a <c>String</c> pattern contains errors.
            </summary>
        </member>
        <member name="T:Swaf.Resource.PatternRepository.Pattern">
            <summary>This class holds onto all the information about a given <em>Pattern</em>.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Pattern.#ctor(Swaf.Resource.PatternRepository,System.String)">
            <summary>Constructs a <c>Pattern</c> object from the <em>Pattern</em> in <c>pat</c>.</summary>
            <remarks>
            <p>Postcondition:
            <ul>
            <li><c>this.pattern()</c> will be the same as <c>pat</c>, the original <em>Pattern</em>.</li>
            <li><c>this.regexpString()</c>: the <em>Perl5 Regular Expression</em> in
            <c>String</c> form.  E.g., all the <c>{keywords}</c> in
            <c>this.pattern()</c> will have been converted to the equivalent
            <em>Perl5 Regular Expression</em> format.</li>
            
            <li><c>this.regexpObject()</c>: the compiled <em>Perl5 Regular Expression</em>
            in binary form.</li>
            
            <li><c>this.complexity()</c>:
            <c>LOOPABLE</c> if/only-if <c>this.regexpString()</c> is <em>Loopable</em>,
            <c>SEQUENCE</c> if/only-if <c>this.regexpString()</c> is an <em>RE-Sequence</em>, or
            <c>ALTERNATION</c> if/only-if <c>this.regexpString()</c> is an <em>RE-Alternation</em>.</li>
            </ul></p></remarks>
            <param name="rep">The repository the pattern is to be associated with.</param>
            <param name="pat">the string containing the <em>Pattern</em>
            (e.g., it is allowed to contain <c>{keywords}</c>).</param>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Pattern.pattern">
            <summary>
            The original <em>Pattern</em> that was passed to the constructor.</summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Pattern.regexpString">
            <summary>The <em>Perl5 Regular Expression</em> that is equivalent to <em>Pattern</em> <c>this.pattern()</c>.
            E.g., all the <c>{keywords}</c> in <c>this.pattern()</c> will have been converted to
            the equivalent <em>Perl5 Regular Expression</em> format.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Pattern.regexpObject">
            <summary>The binary format that is equivalent to <c>this.regexpString()</c>.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Pattern.complexity">
            <summary>Returns the complexity of <c>this.regexpString()</c></summary>
            <remarks>
            <ul>
            <li><c>LOOPABLE</c> if/only-if <c>this.regexpString()</c> is <em>Loopable</em>.</li>
            <li><c>SEQUENCE</c> if/only-if <c>this.regexpString()</c> is an <em>RE-Sequence</em>.</li>
            <li><c>ALTERNATION</c> if/only-if <c>this.regexpString()</c> is an <em>RE-Alternation</em>.</li>
            </ul>
            </remarks>
        </member>
        <member name="T:Swaf.Resource.PatternRepository.Keyword">
            <summary>Remembers all the important information about a given keyword.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Keyword.#ctor(Swaf.Resource.PatternRepository,System.String,System.String,System.String,System.Int32,System.Int32)">
            <summary>
            Constructs a <c>Keyword</c> object using the specified <em>Perl5 Regular Expressions</em>.</summary>
            <param name="keyword">a compiled regular expression that matches the <em>inside</em> of the keyword.
            This must <em>not</em> include the opening "{" nor (in the case of a
            <em>Simple-Keyword</em>) the trailing "}".  However it should include
            the trailing <c>" "</c> in the case of a <em>Composite-Keyword</em>.
            E.g., the parameter for <em>Simple-Keyword</em> <c>{identifier}</c>
            must be compiled from <c>"identifier"</c>, not <c>"\\{identifier\\}"</c>.
            </param>
            <param name="prefixRegexp">
            A portion of the <em>Perl5 Regular Expression</em> that replaces the keyword.
            <p>For <em>Simple-Keywords</em>, this is generally the entire replacement for the keyword.
            Example: for <em>Simple-Keyword</em> <c>{digit}</c>, this would be <c>"\\d"</c>.</p>
            <p>For <em>Composite-Keywords</em>, this is the regexp fragment that goes before the regexp
            that results from translating the <em>Composite-Keyword's</em> "child".
            Example: for <em>Composite-Keyword</em> <c>{group ___}</c>, this would be <c>"(?:"</c>.</p>
            <p>This must not be <c>null</c>.</p>
            </param>
            <param name="suffixRegexp">
            A portion of the <em>Perl5 Regular Expression</em> that replaces the keyword.
            <p>For <em>Simple-Keywords</em>, this is generally <c>null</c>.</p>
            <p>For <em>Composite-Keywords</em>, this is the regexp fragment that goes after the regexp
            that results from translating the <em>Composite-Keyword's</em> "child".
            Example: for <em>Composite-Keyword</em> <c>{group ___}</c>, this would be <c>")"</c>.
            </p><p>
            When this is <c>null</c>, it means there is no child -- that this is a <em>Simple-Keyword</em>.</p></param>
            <param name="childType">indicates what the "child" pattern must be.
            Must one of these:
            <ul>
            <li><c>NONE</c> if there is no child to be parsed;</li>
            <li><c>LOOPABLE</c> if there must be a child and it must be a LOOPABLE;</li>
            <li><c>ANY</c> if there must be a child but it doesn't have to be LOOPABLE.</li>
            </ul>
            </param>
            <param name="complexity">indicates the complexity of the resulting <em>Perl5 Regular Expression</em>.
            Must be one of these:
            <ul>
            <li><c>LOOPABLE</c> if/only-if the resulting regexp is <em>Loopable</em>.</li>
            <li><c>SEQUENCE</c> if/only-if the resulting regexp is an <em>RE-Sequence</em>.</li>
            <li><c>ALTERNATION</c> if/only-if the resulting regexp is an <em>RE-Alternation</em>.</li>
            </ul>
            </param>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.Keyword.m_keywordRegexp">
            <summary>Regular expression pattern that matches the beginning of the keyword.
            This must not match the opening "{" nor (in the case of a <em>Simple-Keyword</em>)
            the trailing "}".  However in the case of a <em>Composite-Keyword</em>, it should
            match the " " that separates the keyword itself from the "child" pattern.
            </summary>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.Keyword.prefixRegexp">
            <summary>A portion of the <em>Perl5 Regular Expression</em> that replaces the keyword.</summary>
            <remarks>
            <p>For <em>Simple-Keywords</em>, this is generally the entire replacement for the keyword.
            Example: for <em>Simple-Keyword</em> <c>{digit}</c>, this would be <c>"\\d"</c>.</p>
            <p>For <em>Composite-Keywords</em>, this is the regexp fragment that goes before the regexp
            that results from translating the <em>Composite-Keyword's</em> "child".
            Example: for <em>Composite-Keyword</em> <c>{group ___}</c>, this would be <c>"(?:"</c>.</p>
            <p>This is never <c>null</c>.</p></remarks>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.Keyword.suffixRegexp">
            <summary>A portion of the <em>Perl5 Regular Expression</em> that replaces the keyword.</summary>
            <remarks>
            <p>For <em>Simple-Keywords</em>, this is generally <c>null</c>.</p>
            <p>For <em>Composite-Keywords</em>, this is the regexp fragment that goes after the regexp
            that results from translating the <em>Composite-Keyword's</em> "child".
            Example: for <em>Composite-Keyword</em> <c>{group ___}</c>, this would be <c>")"</c>.</p>
            <p>When this is <c>null</c>, it means there is no child -- that this is a <em>Simple-Keyword</em>.</p>
            </remarks>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.Keyword.childType">
            <summary>Indicates what the "child" pattern (if any) must be.</summary>
            <remarks>
            One of:
            <ul>
            <li><c>NONE</c> if there is no child to be parsed;</li>
            <li><c>LOOPABLE</c> if there must be a child and it must be a LOOPABLE;</li>
            <li><c>ANY</c> if there must be a child but it doesn't have to be LOOPABLE.</li>
            </ul>
            </remarks>
        </member>
        <member name="F:Swaf.Resource.PatternRepository.Keyword.complexity">
            <summary>Indicates the complexity of the <em>Perl5 Regular Expressions</em>
            that are created using this keyword.</summary>
            <remarks>
            One of:
            <ul>
            <li><c>LOOPABLE</c> if/only-if the resulting regexp is <em>Loopable</em>.</li>
            <li><c>SEQUENCE</c> if/only-if the resulting regexp is an <em>RE-Sequence</em>.</li>
            <li><c>ALTERNATION</c> if/only-if the resulting regexp is an <em>RE-Alternation</em>.</li>
            </ul>
            </remarks>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.#ctor(Swaf.Resource.PatternRepository,System.String)">
            <summary>
            Constructs a <c>PatternRepository.Parser</c> that will parse the string <c>src</c>.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.consumePattern(Swaf.Resource.PatternRepository)">
            <summary>
            Consumes the <em>Pattern</em> at the current position, and emits the appropriate 
            <em>Perl5 Regular Expression</em> into <c>dest</c>.</summary>
            <remarks>
            Stops when <c>pos == end</c>.
            </remarks>
            <returns>
            indicator of the complexity of the emitted <em>Perl5 Regular Expression</em>.
            LOOPABLE means it is <em>Loopable</em>,
            SEQUENCE means it is an <em>RE-Sequence</em>
            (2+ <em>Loopables</em> in a sequence),
            ALTERNATION means it is an <em>RE-Alternation</em>
            (2+ <em>RE-Sequences</em> separated by <c>'|'</c>).
            </returns>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.consumeAlternation(Swaf.Resource.PatternRepository)">
            <summary>Consumes the <em>Alternation</em> at the current position,
            and emits the appropriate <em>Perl5 Regular Expression</em> into <c>dest</c>.
            Stops when <c>pos == end</c> or when <c>src.charAt(pos-1)</c> is <c>')'</c> or <c>'}'</c>.
            </summary>
            <returns>
            indicator of the complexity of the emitted <em>Perl5 Regular Expression</em>.
            LOOPABLE means it is <em>Loopable</em>,
            SEQUENCE means it is an <em>RE-Sequence</em>
            (2+ <em>Loopables</em> in a sequence),
            ALTERNATION means it is an <em>RE-Alternation</em>
            (2+ <em>RE-Sequences</em> separated by <c>'|'</c>).
            
            </returns>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.consumeSequence(Swaf.Resource.PatternRepository)">
            <summary>Consumes the <em>Sequence</em> at the current position,
            and emits the appropriate <em>Perl5 Regular Expression</em> into <c>dest</c>.
            Stops when <c>pos == end</c> or when <c>src.charAt(pos-1)</c> is <c>'|'</c> or <c>')'</c> or <c>'}'</c>.
            </summary>
            <returns>
            indicator of the complexity of the emitted <em>Perl5 Regular Expression</em>.
            LOOPABLE means it is <em>Loopable</em>,
            SEQUENCE means it is an <em>RE-Sequence</em>
            (2+ <em>Loopables</em> in a sequence),
            ALTERNATION means it is an <em>RE-Alternation</em>
            (2+ <em>RE-Sequences</em> separated by <c>'|'</c>).
            
            </returns>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.consumeAtom(Swaf.Resource.PatternRepository)">
            <summary>
            Consumes the <em>Atom</em> at the current position,
            and emits the appropriate <em>Perl5 Regular Expression</em> into <c>dest</c>.</summary>
            <remarks>
            <p>Precondition: <c>src.charAt(pos) == '{'</c>.</p>
            <p>Postcondition: <c>src.charAt(pos-1) == '}'</c>.</p>
            </remarks>
            <returns>
            indicator of the complexity of the emitted <em>Perl5 Regular Expression</em>.
            LOOPABLE means it is <em>Loopable</em>,
            SEQUENCE means it is an <em>RE-Sequence</em>
            (2+ <em>Loopables</em> in a sequence),
            ALTERNATION means it is an <em>RE-Alternation</em>
            (2+ <em>RE-Sequences</em> separated by <c>'|'</c>).
            <p>Note that <c>consumeAtom()</c> consumes a <em>Pattern Atom</em>,
            which doesn't always translate into an <em>RE-Atom</em>.
            In other words, this function will not always return LOOPABLE,
            since it might be the expansion of a {keyword} that is not LOOPABLE.
            </p></returns>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.consumeKeyword(Swaf.Resource.PatternRepository)">
            <summary>Consumes the keyword at the current position,
            and emits the appropriate <em>Perl5 Regular Expression</em> into <c>dest</c>.</summary>
            <remarks>
            <p>Precondition: <c>src.charAt(pos-1) == '{'</c>.
            That is, we must be just <em>past</em> the keyword's "{".</p>
            <p>Postcondition: <c>src.charAt(pos) == '}'</c>.
            That is, we will be <em>at</em> the keyword's "}".</p>
            </remarks>
            <returns>
            indicator of the complexity of the emitted <em>Perl5 Regular Expression</em>.
            LOOPABLE means it is <em>Loopable</em>,
            SEQUENCE means it is an <em>RE-Sequence</em>
            (2+ <em>Loopables</em> in a sequence),
            ALTERNATION means it is an <em>RE-Alternation</em>
            (2+ <em>RE-Sequences</em> separated by <c>'|'</c>).
            </returns>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.consumeChar(System.Char)">
            <summary>Consumes the specified character.
            @throws PatternRepository.BadPattern if the "current character" is not equal to the specified character
            (i.e., if <c>this.src.charAt(this.pos) != c</c>).
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.consumeCharIfMatches(System.Char)">
            <summary>If the specified character is the current character, consumes it and returns <c>true</c>.
            That is, <c>this.pos</c> is incremented if and only if
            <c>this.src.charAt(this.pos) == c</c> at the beginning of this call.
            </summary>
            <returns><c>true</c> if and only if <c>this.src.charAt(this.pos) == c</c>.
            
            </returns>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.error(System.String)">
            <summary>Throws a <c>PatternRepository.BadPattern</c> using the specified <c>details</c>.
            Called when there was a parse error at the implicit position, <c>this.pos</c>.
            </summary>
        </member>
        <member name="M:Swaf.Resource.PatternRepository.Parser.error(System.String,System.Int32)">
            <summary>Throws a <c>PatternRepository.BadPattern</c> using the specified <c>details</c>.
            Called when there was a parse error at the specified position, <c>pos</c>.
            </summary>
        </member>
        <member name="T:Swaf.IsolatedApplication">
            <summary>
            Summary description for IsolatedApplication.
            </summary>
        </member>
        <member name="T:Swaf.DataAccess.AdoNetDataRequest">
            <summary>
            Summary description for AdoNetDataRequest.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.MultiCallInfo">
            <summary>
            Summary description for MultiCallInfo.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.EarlyBinding.BizObjProcessingException">
            <summary>
            Summary description for BizObjProcessingException.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.BizObjDef.insert">
            <summary>
            Will put this instance into the global BizObjManager class using the internal methods
            available for inserting.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.BizObjDef.create(System.Boolean)">
            <summary>
            Will use the global BizObjManager to create an IBizObjDefinition
            </summary>
            <param name="bizObjMgrCache">Will insert it into the global BizObjManager if specified as true</param>
            <returns></returns>
        </member>
        <member name="T:Swaf.BasicResults">
            <summary>
            The basic implementation of IResults that is used by <c>RuleManager</c>
            to return the results of calling business rules.</summary>
            <author>mdenman</author>
        </member>
        <member name="T:Swaf.Serialization">
            <summary>
            Summary description for Serialization.
            </summary>
        </member>
        <member name="T:Swaf.Security.DynSecurityRuleDecorator">
            <summary>
            The SecurityRuleDecorator class implements the IRuleDecorator interface and is 
            registered in the RuleDecorators classfactory in the SecurityFeature file.  
            This decorator is automatically added to all business rules during startup 
            configuration unless the rule definition already has it defined.  To decorate 
            a rule to override the default behavior of security, add the security attribute 
            to the rule definition.  Valid values are true (the default if the decorator is 
            not explicitly declared), false for no security or global to use the default 
            security principal on the global application object.
            </summary>
        </member>
        <member name="M:Swaf.Security.DynSecurityRuleDecorator.#ctor(System.String,System.String,System.Object)">
            <summary>
            Constructor for this decorator
            </summary>
            <param name="name"></param>
            <param name="val"></param>
            <param name="extraInfo"></param>
        </member>
        <member name="M:Swaf.Security.DynSecurityRuleDecorator.preRuleExecution(Swaf.BizRule.IRunningRule)">
            <summary>
            Called by the QueueElement prior to rule execution.  This method actuall implements the
            security call.  It performs a security assertion against the security principal (if enabled)
            using the Privileges.Execute enum as the minimum required privilige. 
            </summary>
            <param name="info"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.DynSecurityRuleDecorator.postRuleExecution(Swaf.BizRule.IRunningRule,System.Object@,System.Exception@)">
            <summary>
            Not implemented.
            </summary>
        </member>
        <member name="M:Swaf.Security.DynSecurityRuleDecorator.decorateInstance(System.Object)">
            <summary>
            <see cref="M:Swaf.IDecorator.decorateInstance(System.Object)"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.DynSecurityRuleDecorator.Value">
            <summary>
            Returns the value specified on the security bizrule decorator which should
            be a valid resource name to the ISecurityPrincipal
            </summary>
        </member>
        <member name="P:Swaf.Security.DynSecurityRuleDecorator.Name">
            <summary>
            <see cref="P:Swaf.IDecorator.Name"/>
            </summary>
        </member>
        <member name="P:Swaf.Security.DynSecurityRuleDecorator.IsStandin">
            <summary>
            <see cref="P:Swaf.IDecorator.IsStandin"/>
            </summary>
        </member>
        <member name="T:Swaf.Resource.ResourceManager">
            <summary>
            Provides a message store that can return a text string based on a message id
            and can replace embedded macros with parameters passed to it.</summary>
            <author>Matthew Denman</author>
        </member>
        <member name="F:Swaf.Resource.ResourceManager.m_activeCultureMaps">
            <summary>This maps from the messageID to the message format.
            The messageID is a unique string for each message in the system.
            The message format can contain "{0}", etc., which are replaced
            by actual parameters when the message is being built.
            </summary>
        </member>
        <member name="T:Swaf.Messaging.MessagingListener">
            <summary>
            Connects to a messaging system to listen for messages based on a configuration given to it
            during construction of the object.
            </summary>
            <remarks>Each instance of this class creates its own thread that is started when
            MessagingListener.start is called.  This thread recieves messages from the messaging system
            and calls each of its observers with the message, which can be formatted from the base message through
            the formatter string passed in to calls of MessagingListener.add.
            </remarks>
        </member>
        <member name="M:Swaf.Messaging.MessagingListener.tryToCallObserver(Swaf.Messaging.MessagingListener.ObserverInfo,Swaf.Messaging.IMessage)">
            <summary>
            Helper class to try and call an observer
            </summary>
            <param name="msg"></param>
            <returns></returns>
        </member>
        <member name="T:Swaf.Messaging.MessagingListener.ObserverInfo">
            <summary>
            Maintains information about an observer to a MessagingListener instance that is used to
            do callbacks when messages arrive.
            </summary>
        </member>
        <member name="F:Swaf.Messaging.MessagingListener.ObserverInfo.Formatter">
            <summary>
            A class factory pattern to create a formatter that will convert the received message content
            into a suitable type for the observer when being called back.
            </summary>
        </member>
        <member name="F:Swaf.Messaging.MessagingListener.ObserverInfo.ProvidesResult">
            <summary>
            Used to decide if the given observers return value should be included as a result
            if the message recieved needs to have a reply.
            </summary>
        </member>
        <member name="F:Swaf.Messaging.MessagingListener.ObserverInfo.MatchPattern">
            <summary>
            A pattern to match the message body against to determin if this observer should be called
            when a message comes in.  Can be null, which indicates that no pattern matching is being
            used and the observer should be called every time.  The actual pattern matching is done 
            through Swaf.Resource.ResourceManager.match(); see it for more information on how
            patterns can be formed.
            </summary>
        </member>
        <member name="F:Swaf.Messaging.MessagingListener.ObserverInfo.EncryptResults">
            <summary>
            Used to decide whether and how returned results should be encrypted or not.  If this
            option is set and the cryptogrophy feature is not included, an exception will occur
            </summary>
        </member>
        <member name="F:Swaf.Messaging.MessagingListener.ObserverInfo.MessageStringOnly">
            <summary>
            Used to determine whether or not to try and send the IMessage object to the call.
            </summary>
        </member>
        <member name="T:Swaf.Messaging.MessagingConnectionBase">
            <summary>
            Summary description for MessagingConnectionBase.
            </summary>
        </member>
        <member name="T:Swaf.Logging.Log">
            <summary>
            Summary description for Log.
            </summary>
        </member>
        <member name="T:Swaf.Logging.DarLogObserver">
            <summary>
            Summary description for DarLogObserver.
            </summary>
        </member>
        <member name="T:Swaf.Gui.SpreadsheetLayoutAlg">
            <summary>
            Summary description for SpreadsheetLayout.
            </summary>
        </member>
        <member name="T:Swaf.Gui.CellRegion">
            <summary>
            Defines a region of spreadsheet cells that can have a new origin.
            </summary>
            <remarks>This class helps to support the concept of cells being sized based on each other, but
            having groups of cells located in different coordinate spaces such that their location can be
            indipendant of their sibling cells.</remarks>
        </member>
        <member name="T:Swaf.DataAccess.IGroupFormatter">
            <summary>
            This formatter will consume an ADO.Net DataReader with 1 or more result sets within
            in and will map those result sets to business objects using an Xml catalog "Map".  The output
            will always be an IList object if there are more than one entries in the map.  Otherwise, it will
            return either an IBizObj or an IBizObjList depending on the definition within the map.
            </summary>
        </member>
        <member name="T:Swaf.Crypto.FileCryptoWebRequest">
            <summary>
            Summary description for FileCryptoWebRequest.
            </summary>
        </member>
        <member name="T:Swaf.Container.MuliThreadedLinkedList">
            <summary>
            Summary description for MuliThreadedLinkedList.
            </summary>
        </member>
        <member name="T:Swaf.Container.DictionaryStack">
            <summary>
            Summary description for DictionaryStack.
            </summary>
        </member>
        <member name="T:Swaf.Call.SimpleWebServiceRuleMgrCall">
            <summary>
            Summary description for WebServiceCall.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.xml.XmlBusinessObjectList">
            <summary> Implements the <c>IBizObjCursor</c> interface by using a 
            <c>IListState</c> that maintains an XML xpath query into a given XML
            element as its data store.
            *
            </summary>
            <author>  mdenman
            
            </author>
        </member>
        <member name="M:Swaf.BizObj.xml.XmlBusinessObjectList.#ctor(Swaf.BizObj.IBizObjDefinition,Swaf.BizObj.xml.ListState)">
            <summary>Creates a new instance of XmlBusinessObjectIList 
            </summary>
        </member>
        <member name="M:Swaf.BizObj.xml.XmlBusinessObjectList.#ctor(Swaf.BizObj.IBizObjDefinition,Swaf.BizObj.xml.ListState,Swaf.BizObj.IBizObjSource)">
            <summary>Creates a new instance of XmlBusinessObjectIList 
            </summary>
        </member>
        <member name="T:Swaf.BizObj.xml.ListState">
            <summary> Maintains a <c>System.Xml.XmlElement</c> and an xpath <c>String</c> that 
            returns a <c>System.Xml.XmlNodeList</c> for use by <c>XmlBusinessObjectIList</c>.</summary>
        </member>
        <member name="M:Swaf.BizObj.xml.ListState.#ctor(System.String,Swaf.BizObj.xml.IXmlNodeParent,System.String)">
            <summary>Creates a new instance of IListState</summary>
        </member>
        <member name="M:Swaf.BizObj.xml.ListState.#ctor(System.Xml.XmlElement,System.String,System.Boolean)">
            <summary>Creates a new instance of IListState 
            </summary>
        </member>
        <member name="T:Swaf.BizObj.fieldValidator.IntegerRangeValidator">
            <summary> The concrete FieldValidator derived class that validates
            that an integer (actually a 'long') is within a range.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.IntegerRangeValidator.reg(Swaf.BizObj.BizObjManager,System.String,System.String,System.Int64,System.Int64)">
            <summary>Registers the specified pattern as a validator.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.IntegerRangeValidator.#ctor(System.String,System.String,System.String)">
            <summary>Constructs a IntegerRangeValidator using the specified name and params.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.fieldValidator.IntegerRangeValidator.#ctor(System.String,System.Int64,System.Int64)">
            <summary>Constructs a IntegerRangeValidator using the specified min and max.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.IntegerRangeValidator.min_">
            <summary>This is the minimum value of a valid long.
            </summary>
        </member>
        <member name="F:Swaf.BizObj.fieldValidator.IntegerRangeValidator.max_">
            <summary>This is the maximum value of a valid long.
            </summary>
        </member>
        <member name="T:Swaf.Security.SecurityRuleDecorator">
            <summary>
            The SecurityRuleDecorator class implements the IRuleDecorator interface and is 
            registered in the RuleDecorators classfactory in the SecurityFeature file.  
            This decorator is automatically added to all business rules during startup 
            configuration unless the rule definition already has it defined.  To decorate 
            a rule to override the default behavior of security, add the security attribute 
            to the rule definition.  Valid values are true (the default if the decorator is 
            not explicitly declared), false for no security or global to use the default 
            security principal on the global application object.
            </summary>
        </member>
        <member name="M:Swaf.Security.SecurityRuleDecorator.#ctor(System.String,System.String,System.Object)">
            <summary>
            Constructor for this decorator
            </summary>
            <param name="name"></param>
            <param name="val"></param>
            <param name="extraInfo"></param>
        </member>
        <member name="M:Swaf.Security.SecurityRuleDecorator.preRuleExecution(Swaf.BizRule.IRunningRule)">
            <summary>
            Called by the QueueElement prior to rule execution.  This method actuall implements the
            security call.  It performs a security assertion against the security principal (if enabled)
            using the Privileges.Execute enum as the minimum required privilige. 
            </summary>
            <param name="info"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Security.SecurityRuleDecorator.postRuleExecution(Swaf.BizRule.IRunningRule,System.Object@,System.Exception@)">
            <summary>
            Not implemented.
            </summary>
            <param name="info"></param>
            <param name="ruleReturn"></param>
            <param name="ruleException"></param>
        </member>
        <member name="M:Swaf.Security.SecurityRuleDecorator.decorateInstance(System.Object)">
            <summary>
            <see cref="M:Swaf.IDecorator.decorateInstance(System.Object)"/>
            </summary>
            <param name="theInst"></param>
            <returns></returns>
        </member>
        <member name="P:Swaf.Security.SecurityRuleDecorator.Value">
            <summary>
            Returns the value of the security attribute on the rule.
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityRuleDecorator.Name">
            <summary>
            Returns the name of the decorator (security)
            </summary>
        </member>
        <member name="P:Swaf.Security.SecurityRuleDecorator.IsStandin">
            <summary>
            <see cref="P:Swaf.IDecorator.IsStandin"/>
            </summary>
        </member>
        <member name="T:Swaf.Security.SecurityRuleDecorator.State">
            <summary>
            Enumeration containing the valid values for this decorator.
            </summary>
            <remarks>
            <p>disabled - indicates that no security should be applied to this rule</p>
            <p>enabled - indicates that security should be applied using the current principal</p>
            <p>global - indicates that security should be applied using the current principal on the global application</p>
            </remarks>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.getAllKnownCountries(Swaf.IApplication,Swaf.BizRule.IRuleContext)">
            <summary>
            Returns a list of every country defined in the countries table.
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.getCompanyPreferredCountries(Swaf.IApplication,Swaf.BizRule.IRuleContext)">
            <summary>
            Returns a list of countries in the CompanyCountries table for a given company.  These
            are the countries that the company wants exposed to the user for what country then can choose
            for addresses.
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.setCompanyPreferredCountries(Swaf.IApplication,Swaf.BizRule.IRuleContext,Swaf.BizObj.IBizObjList)">
            <summary>
            This rule will first delete all of the active company's preffered countries and then add all the countries
            in the given list.  This is ok, because there are not enough countries in the world to worry about
            performance.  
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <param name="companyId"></param>
            <param name="countries"></param>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.getCountriesWithActiveCultures(Swaf.IApplication,Swaf.BizRule.IRuleContext)">
            <summary>
            Gets a list of countries for a given company that have cultures that refer to them.
            </summary>
            <remarks>
            Check for "MapUndefinedCountriesToCulture" macro that will have a culture browser code
            that is the default culture to use for preferredCountries that dont have a real culture.
            If that macro is not defined, the list returned will not contain countries that dont have
            a real culture mapped to it in the database.  This allows for a large list of preferredCountries
            that can be picked for a culture selection that dont have a fully defined culture defined specifically for
            it.  This will be good for sites that want the user to pick what country they are from and the site
            will map to a standard culture for that country.
            </remarks>
            <param name="app"></param>
            <param name="context"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.getAllKnownCultures(Swaf.IApplication,Swaf.BizRule.IRuleContext)">
            <summary>
            Gets a list of all of the known cultures in the system, regardless of having actual translations
            available for them or the company.  There is only one list of known cultures
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.getActiveCultures(Swaf.IApplication,Swaf.BizRule.IRuleContext)">
            <summary>
            Gets a list of cultures that have a language with at least one translation for it.
            For the active company and are marked as "isActive == true".
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.getCultureDetailsWithTranslationText(Swaf.IApplication,Swaf.BizRule.IRuleContext,System.String)">
            <summary>
            Returns an ActiveCulture type bizobj, with translated text in it.
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <param name="cultureBrowserCode"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.createUpdateCulture(Swaf.IApplication,Swaf.BizRule.IRuleContext,Swaf.BizObj.IBizObj)">
            <summary>
            Creates or updates the given culture (based on culture.isNew field)
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <param name="culture"></param>
        </member>
        <member name="M:Swaf.Resource.BasicLocalizationBizRules.createUpdateTranslation(Swaf.IApplication,Swaf.BizRule.IRuleContext,Swaf.BizObj.IBizObj)">
            <summary>
            The translationInfo bizobj can contain the texts that make up the translation and those will be inserted/updated
            as well.
            This will not blinkdly delete all existing translation texts and re-add them from the translationInfo.  Each
            text will be checked for isNew and updated/inserted as needed.  Note that a blank value for the text will cause
            the text to be deleted from the database.
            </summary>
            <param name="app"></param>
            <param name="context"></param>
            <param name="translationInfo"></param>
        </member>
        <member name="T:Swaf.Logging.EventLogLogObserver">
            <summary>
            Summary description for EventLogLogObserver.
            </summary>
        </member>
        <member name="M:Swaf.DataAccess.RuleTransactionDecorator.preRuleExecution(Swaf.BizRule.IRunningRule)">
            <summary>
            This call will setup the transaction manager to support the transaction support required by the rule
            before the rule is executed.
            </summary>
            <param name="rule"></param>
            <returns>Always returns true because a rule will never not be executed due to transaction issues.</returns>
        </member>
        <member name="M:Swaf.DataAccess.RuleTransactionDecorator.postRuleExecution(Swaf.BizRule.IRunningRule,System.Object@,System.Exception@)">
            <summary>
            This call will check to see if a transaction is completed based on this
            rule being the initial rule that created the transaction
            </summary>
            <param name="info"></param>
        </member>
        <member name="T:Swaf.DataAccess.IDbConnectionHook">
            <summary>
            Summary description for IDbConnectionHook.
            </summary>
        </member>
        <member name="T:Swaf.Crypto.HttpCryptoWebRequest">
            <summary>
            Summary description for HttpCryptoWebRequest.
            </summary>
        </member>
        <member name="T:Swaf.Call.DisabledCall">
            <summary>
            Summary description for DisabledCall.
            </summary>
        </member>
        <member name="T:Swaf.Call.BroadcastCall">
            <summary>
            BroadcastCall is a CompositeCall type ICall implementation.  CompositeCalls contain one or more
            sub-call elements.  The Broadcast call, when executed calls all sub-call elements in order and 
            returns an IList with one entry for each enabled defined call.  That entry will be either the result (if 
            called) or an exception thrown by the call.
            </summary>
        </member>
        <member name="T:Swaf.Call.CallInfoBizRules">
            <summary>
            Summary description for BaseRules.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.ThreadedQueue.QueueElement">
            <summary> An internal class used by <c>BasicRuleQueue</c> that maintains the rule call
            info and sits in the work queue until a work thread can process the rule from this
            object.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.xml.XmlBizSource">
            <summary> Implments the <c>IBizObjSource</c> interface by maintaining an XML
            <c>org.dom4j.Document</c> for its data store.
            *
            </summary>
            <author> mdenman
            
            </author>
        </member>
        <member name="M:Swaf.BizObj.xml.XmlBizSource.AddList(Swaf.BizObj.IBizObjList)">
            <summary>
            Adds a new list reference to the ArrayList of BizObjLists.
            </summary>
            <param name="thisList"></param>
        </member>
        <member name="T:Swaf.BizObj.basic.FullBizObj">
            <summary>
            Implements the IBizObj interface by maintaining the bizobj values in an in
            memory dictionary.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.#ctor(Swaf.BizObj.IBizObjDefinition)">
            <summary>
            Creates a new instance of the given bizobj type, without any of its fields set.
            </summary>
            <param name="bizObjType"></param>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.#ctor(System.String,Swaf.BizObj.IBizObjDefinition,System.Xml.XmlTextReader)">
            <summary>
            Given an XmlTextReader, this constructor will populate itself from the attributes and 
            elements that it finds while iterating through the XmlNodes from the current position.
            Once it reaches the end of its content it will return, leaving the XmlTextReader on the
            next element in its conent.
            </summary>
            <remarks>This method expects the XmlTextReader to be at the begining element of the
            Xml for this object.  If a new XmlTextReader is being used, ensure that the MoveToContent
            method is called at the very least or an exception will occur.</remarks>
            <param name="parentFieldName">If this is a child bizobj of a bizobj, the xml element
            that starts this bizobj would be named for the field, not the bizobj type.  If this is
            so, then this would be the expected node name for the main element. Can be null if
            the element will not be named for a field, or if a check is not desired to match
            the element name to the parentFieldName</param>
            <param name="info">The bizobj definition that this bizobj will become.</param>
            <param name="xml">The xml for this constructor to use to populate itself.</param>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.tryToAddAsBizObjListItem(Swaf.BizObj.IBizObjDefinition,System.Xml.XmlTextReader)">
            <summary>
            When a element is found during processing an XmlTextRead for a bizobj that does not match a field name directly, 
            this method is called to see if the element belongs as a child to a bizobj field that is a bizobj list.  
            Normally, if a bizobj Customer has a field called Addresses that is a bizobjlist of addresses, the Address elements
            will be in a parent element called Addresses.  However, incomming XML isn't required to having this and if an
            Address element is not contained within an Addresses parent, this method will attempt to create a new Address
            bizobj and push it into the Addresses field of the current bizobj being populated.
            </summary>
            <param name="info">The bizobj definition of the current bizobj being populated.  </param>
            <param name="xml">The XmlTextReader positioned at the element to be examinined</param>
            <returns>true if was able to find a matching bizobjlist and properly populate it, false
            if it was not.</returns>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.createInstance(Swaf.BizObj.IBizObjDefinition)">
            <summary>
            This (or one of the other static createInstance methods) is the proper way to create new instances
            of a FullBizObj.  If early bound interfaces and instances are being used, this method will create
            one of those for the given bizobj type rather then creating a FullBizObj directly.  For example,
            if early bound bizobj implementations are being used, a "Customer" bizobj will have an ICustomer/Customer
            interface/class created for it.  Rather then creating a FullBizObj instance, it will create a
            Customer instance.
            </summary>
            <param name="def">The bizobj type ot create.</param>
            <returns>a new instance of the bizobj type requested.</returns>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.createInstance(System.String,Swaf.BizObj.IBizObjDefinition,System.Xml.XmlTextReader)">
            <summary>
            This (or one of the other static createInstance methods) is the proper way to create new instances
            of a FullBizObj.  If early bound interfaces and instances are being used, this method will create
            one of those for the given bizobj type rather then creating a FullBizObj directly.  For example,
            if early bound bizobj implementations are being used, a "Customer" bizobj will have an ICustomer/Customer
            interface/class created for it.  Rather then creating a FullBizObj instance, it will create a
            Customer instance.
            </summary>
            <param name="parentName">the parent field name this instance is associated with.</param>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.containsSingleField(System.String)">
            <summary>
            This method checks if the bizobj has a value assigned to the specified field.
            This method does not check for a valid field name being supplied. If an invalid
            field name is supplied this method will always return false.
            </summary>
            <param name="singleName">The field in this bizobj to check for an assigned value.</param>
            <returns>true if the given field has been assigned a value, false if not.</returns>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.removeValue(System.String)">
            <summary>
            If this bizobj has an assigned value to the specified field name, this method
            will remove the assigned value from the bizobj and reset the dirty/validated
            flags.  This method does not support deep names (a.b.c).  It is called by basebizobj
            which supports deep names and uses this method appropriately.
            </summary>
            <param name="singleName">the field in this bizobj to remove the value for.</param>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.Clone">
            <summary>
            This is a deep clone method, which goes through the serializing this as XML
            and then recreating it via the constructor that populates from an XmlTextReader.
            This is the best approach to absolutely ensure a fully deep clone is done and that no
            shared values exist between this and the newly created clone.
            </summary>
            <returns>The deeply cloned bizobj</returns>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.getSingleName(System.String)">
            <summary>
            Used by BaseBizObj to get the value of a field for this bizobj.  This method
            does not support deep names (a.b.c) and expects the field name an actual direct
            field of this bizobj.  If not, nothing happens.  BaseBizObj is expected to verify
            the name is really a field of the bizobj.
            </summary>
            <param name="singleName">The name of the field to get the value of.</param>
            <returns>The raw value of the object, if decorated it will still be decorated.</returns>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.getSingleName(System.String,System.Object[])">
            <summary>
            Used by BaseBizObj to get the value of a field for this bizobj.  This method
            does not support deep names (a.b.c) and expects the field name an actual direct
            field of this bizobj.  If not, nothing happens.  BaseBizObj is expected to verify
            the name is really a field of the bizobj.
            </summary>
            <param name="singleName">The name of the field to get the value of.</param>
            <returns>The raw value of the object, if decorated it will still be decorated.</returns>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.putSingleName(System.String,System.Object,System.Object,System.Boolean)">
            <summary>
            Used by BaseBizObj to put the value of a field for this bizobj.  This method
            does not support deep names (a.b.c) and expects the field name an actual direct
            field of this bizobj.  If not, nothing happens.  BaseBizObj is expected to verify
            the name is really a field of the bizobj.
            </summary>
            <param name="singleName">The name of the field to get the value of.</param>
            <param name="val">The value to be put into the bizobj, this should be a post
            decorator value.</param>
            <param name="shouldValueBeFieldType">If true, this method will attempt to verify
            the .NET type of val matches the expected type of the field.  If not it will
            log the issue but still put the value in its dictionary.  For example, if an Int32
            is passed by an Int16 is expected a log entry will be written and the Int32 will be 
            put in the dictionary.</param>
        </member>
        <member name="M:Swaf.BizObj.basic.FullBizObj.createPlatformTypeInstance(Swaf.BizObj.BizObjField,System.Object)">
            <summary>
            This method will attempt to convert the given value (val) into the type expected
            by the field.  This method does NOT perform magic.  If the field type doesn't support
            being created by the type passed this method will fail.  IF the field is a bizobj or
            bizobjlist type, it will use val as a string and trying processing it as XML.  If this
            method cannot convert the type, it will log an entry in the application log.
            </summary>
            <param name="field">The bizobj field definition to use for the destination type.</param>
            <param name="val">The source value to convert from.</param>
            <returns>The converted type if possible or the origional type if the conversion could not
            be done.</returns>
        </member>
        <member name="P:Swaf.BizObj.basic.FullBizObj.EarlyBindFactory">
            <summary>
            This is the early binding class factory that will exist if early binding bizobj
            support is being used.  If the early binding bizobj support is not present, then
            this properly will return null on get.
            </summary>
        </member>
        <member name="P:Swaf.BizObj.basic.FullBizObj.isNew">
            <summary>
            If this bizobj is marked as "new" then this will return true, else false.
            </summary>
        </member>
        <member name="P:Swaf.BizObj.basic.FullBizObj.isDeleted">
            <summary>
            If this bizobj is marked as "delete" then this will return true, else false.
            </summary>
        </member>
        <member name="T:Swaf.SingleCallAndResult">
            <summary>
            Summary description for SingleCallAndResult.
            </summary>
        </member>
        <member name="T:Swaf.Resource.CascadeMacro">
            <summary>
            Summary description for SimpleMacro.
            </summary>
        </member>
        <member name="T:Swaf.Messaging.MessagingListenerGroup">
            <summary>
            Summary description for MessagingListenerGroup.
            </summary>
        </member>
        <member name="F:Swaf.Messaging.MessagingListenerGroup.m_loopIterationWaitTime">
            <summary>
            Time to wait in loop after processing a single message from each listener.
            </summary>
        </member>
        <member name="T:Swaf.Container.ChangeJournalExpireNode">
            <summary>
            Summary description for ChangeJournalExpireNode.
            </summary>
        </member>
        <member name="T:Swaf.Container.BTreeEntry">
            <summary>
            The BTree stores key/value pairs in instances of this class which
            serve as the main storage for elements added to the tree.
            </summary>
        </member>
        <member name="T:Swaf.Container.BTreeException">
            <summary>
            The one and only exception that will be thrown from the BTree.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "T:Swaf.Container.BTree" -->
        <member name="M:Swaf.Container.BTree.Init(System.Int32,System.Boolean)">
            <summary>
            initialize btree
            </summary>
            <param name="order"></param>
        </member>
        <member name="M:Swaf.Container.BTree.RootIsFull">
            <summary>
            called when the root node is full
            </summary>
        </member>
        <member name="M:Swaf.Container.BTree.RootIsEmpty">
            <summary>
            called when root is empty
            </summary>
        </member>
        <member name="M:Swaf.Container.BTree.#ctor(System.Int32)">
            <summary>
            create a BTree of order n
            </summary>
            <param name="order"></param>
        </member>
        <member name="T:Swaf.Container.BTreeNode">
            <summary>
            The parent class for the inner and leaf node types used in the BTree.
            </summary>
        </member>
        <member name="M:Swaf.Container.BTreeInnerNode.IncCount(System.Int32,System.Int32)">
            <summary>
            Had default value for n=1
            </summary>
            <param name="i"></param>
            <param name="n"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.Container.BTreeInnerNode.DecCount(System.Int32,System.Int32)">
            <summary>
            Had default value for n=1
            </summary>
            <param name="i"></param>
            <param name="n"></param>
            <returns></returns>
        </member>
        <!-- Badly formed XML comment ignored for member "M:Swaf.Container.BTreeInnerNode.SplitWith(Swaf.Container.BTreeInnerNode,System.Int32)" -->
        <member name="T:Swaf.BaseProperty">
            <summary>
            Summary description for BaseProperty.
            </summary>
        </member>
        <member name="T:Swaf.SessionInfo">
            <summary>
            Summary description for SessionInfo.
            </summary>
            
        </member>
        <member name="T:Swaf.Script.ScriptContainerNode">
            <summary>
            Summary description for ScriptContainerNode.
            </summary>
        </member>
        <member name="T:Swaf.Config.BadConfigException">
            <summary>
            This exception is thrown when something is wrong with the XML format of an application
            configuration file.</summary>
        </member>
        <member name="T:Swaf.CompositeComparable">
            <summary>
            This class will take multiple IComparable implementations and compare them
            to an object passed in. It will do it in the order in which they were added.
            </summary>
        </member>
        <member name="M:Swaf.CompositeComparable.Add(System.Object)">
            <summary>
            Addes a comparable to the composite comparable
            </summary>
            <param name="comparable"></param>
        </member>
        <member name="M:Swaf.CompositeComparable.Equals(System.Object)">
            <summary>
            Compare two CompositeComparables
            </summary>
            <param name="obj"></param>
            <returns></returns>
        </member>
        <member name="M:Swaf.CompositeComparable.ToString">
            <summary>
            Override default ToString impl to concat all comparables together to produce "old style" values.
            </summary>
            <returns></returns>
        </member>
        <member name="T:Swaf.Call.PollingCallbackQueue">
            <summary>
            Summary description for PollingCallbackQueue.
            </summary>
        </member>
        <member name="T:Swaf.Call.FailoverCall">
            <summary>
            FailoverCall is a CompositeCall type ICall implementation.  CompositeCalls contain one or more
            sub-call elements.  The FailoverCall call provides a mechanism to specify a primary, secondary, 
            tertiary, etc calling order.  When executed, the first non-disabled call in the list is executed.
            If that call fails it is disabled and the next call in the sequence is attempted until either
            all calls are disabled or a successfully call is made.  If all calls are disabled an exception is
            raised to the caller.
            </summary>
        </member>
        <member name="T:Swaf.BizRule.ManagementRules">
            <summary>
            Contains business rules for managing RuleManager.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.TrimFieldDecorator">
            <summary>
            Field Decorator to enable a business object field to be trimmed automatically.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "M:Swaf.BizObj.TrimFieldDecorator.put(Swaf.BizObj.IBizObj,Swaf.BizObj.IBizObjField,System.Object@,System.Object,System.Boolean@)" -->
        <member name="M:Swaf.BizObj.TrimFieldDecorator.get(Swaf.BizObj.IBizObj,Swaf.BizObj.IBizObjField,System.Object@,System.Object[],System.Boolean@)">
            <summary>
            When a value is requested on of the following will occur:
            
            If trim type is True return value as is because it is already trimmed in memory.
            
            If trim type is Get return a trimmed version of the value.
            
            If trim type is Get and extraInfo is notrim, return the value will not be trimmed.
            </summary>
            <param name="parent"></param>
            <param name="field"></param>
            <param name="val"></param>
            <param name="extraInfo"></param>
            <param name="shouldBeFieldType"></param>
        </member>
        <member name="M:Swaf.BizObj.TrimFieldDecorator.doesUseFullXmlElement">
            <summary>
            This is used by XML serialization of bizobjs to control whether the decorator consumes the
            entire XML element for the field (OuterXML) or just the inner xml element content
            (InnerXML).  When encryption is applied to a field it is always using the inner xml content
            </summary>
        </member>
        <member name="P:Swaf.BizObj.TrimFieldDecorator.IsStandin">
            <summary>
            Indicates that this decorator manipulates the field value for the bizobj.  
            This decorator is always a stand-in.
            </summary>
        </member>
        <member name="T:Swaf.BizObj.TrimDecoratorException">
            <summary>
            Exception class to handle valid values for trimming biz objects
            </summary>
        </member>
        <member name="M:Swaf.BizObj.TrimDecoratorException.#ctor">
            <summary>
            Default Constructor
            </summary>
        </member>
        <member name="M:Swaf.BizObj.TrimDecoratorException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization constructor
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="M:Swaf.BizObj.TrimDecoratorException.#ctor(System.String)">
            <summary>
            Standard message string constructor
            </summary>
            <param name="message"></param>
        </member>
        <member name="M:Swaf.BizObj.TrimDecoratorException.#ctor(System.String,System.Exception)">
            <summary>
            Message string constructor with inner exception
            </summary>
            <param name="message"></param>
            <param name="innerException"></param>
        </member>
        <member name="T:Swaf.BizObj.EarlyBinding.EarlyBindBizObjGenerator">
            <summary>
            This class will inspect a CSF application configuration and generate early bound
            classes for each business object defined within it.
            </summary>
            <remarks>
            
            </remarks>
        </member>
        <member name="M:Swaf.BizObj.EarlyBinding.EarlyBindBizObjGenerator.generateFromConfig(System.String,System.String,System.String,System.String,System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Given an well formed CSF application configuration and the various options
            this method will examine the business object definitions in the application
            configuration and create an early bound interface, business object class and business
            object list class for each business object defined in the application.
            </summary>
            <remarks>
            This method starts an isolated application of the CSF application provided in a 
            "browse mode" that allows it to inspect the application and get the business object
            definitions out of it.
            </remarks>
            <param name="baseConfig">The name of the application configuration xml file</param>
            <param name="baseLoc">The base location passed to CSF application when it is started</param>
            <param name="binLoc">The base location to run the application in</param>
            <param name="outputLocation">The location to place the generated code, feature definition and 
            assembly</param>
            <param name="compileOutput">If true, this method will attempt to compile the code into
            a library assembly.  If false, this method will only generate the feature definition and
            code for the business objects.</param>
            <param name="secondPassCompile">If true, this code will work hard to create an assembly even 
            if it has to remove some business object definitions that failed so that a sub-set of business
            objects have their classes.</param>
            <param name="generateDebugInfo">If true, when creating the assembly it will include debug info
            else it will be a release build.</param>
            <returns></returns>
        </member>
        <member name="M:Swaf.BizObj.EarlyBinding.EarlyBindBizObjGenerator.createBody(Swaf.BizObj.IBizObjDefinition,System.String,System.String,System.Boolean)">
            <summary>
            This method will create the inner contents of the interface or class based on the
            properties and methods of the business object definition given.
            </summary>
            <remarks>
            This class uses the passed templates to generate the content.  This allows callers
            to pick between the appropriate template and pass them in here.
            
            NOTE: If a new type of business object field type is created, this method
            should be updated.  It only supports NetClass, BizObj, BizObjList, and 
            Method.  If a new entry is added to the BizFieldType enumeration this method
            should be revised.
            </remarks>
            <param name="def">The business object definition to build off of</param>
            <param name="methodTemplate">The template with resMgr macros that will generate
            the right code for a business object method.</param>
            <param name="propTemplate">The template with resMgr macros that will generate
            the right code for a business object property</param>
            <param name="ignoreInheritedFields">If true, this method will not generate code
            for properties or methods that are inherited from a parent business object.  This is
            good for interfaces because they do not want to relist their parents code elements.  
            However, because we dont use inheritance for classes, this method can product
            implementations for all the fields of the given definition.</param>
            <returns>The body of the class or interface that was created by this method</returns>
        </member>
        <member name="M:Swaf.BizObj.EarlyBinding.EarlyBindBizObjGenerator.getTypeName(System.String)">
             <summary>
            When a bizobj field has a null default value, its type cannot be retrieved from the sample
            value.  In those cases this method is called which will look in its m_typeNameMap to see if
            it has used the given name before.  If it hasn't this method will create an instance out
            of the bizobjfield class factory and get the full type name from it and then cache the
            type name in the m_typeNameMap.
             </summary>
             <param name="name">The class factory nick name to calculate the real .net class type for</param>
             <returns></returns>
        </member>
        <member name="M:Swaf.BizObj.EarlyBinding.EarlyBindBizObjGenerator.setupTemplates">
            <summary>
            This method will read all the code templates used by this class from the CodeTemplates
            catalog directory and cache them in m_templates.  This is a performance method that
            allows the templates to be reused for each bizobj without having to read the template
            from the file each time.
            </summary>
        </member>
        <member name="M:Swaf.BizObj.EarlyBinding.EarlyBindBizObjGenerator.addCompilerErrors(System.CodeDom.Compiler.CompilerResults)">
            <summary>
            Given the compiler errors, this method will add the exceptions
            into the m_exceptions collection for the combined output of the
            work being done by this class.
            </summary>
            <param name="rc"></param>
        </member>
        <member name="M:Swaf.BizObj.EarlyBinding.EarlyBindBizObjGenerator.compile(System.String,System.Boolean,System.Boolean)">
            <summary>
            Given the file names in m_files, this will use System.CodeDom.Compiler to
            compile all the code files into a library assembly.
            </summary>
            <remarks>This method can call itself recursively one time to try and
            compile again with the files that cause exceptions the first time 
            removed from the main file list of generated code.</remarks>
            <param name="baseLoc">The file system location to use to find the code files</param>
            <param name="tryAgain">If true, the code will do a second pass compile if
            exceptions occured on the first pass.
            </param>
            <param name="generateDebugInfo">Will compile with debug info if true.</param>
            <returns>The exceptions that occured on the last compile done.  If second
            pass compile was done, the exceptions from the 2nd pass are returned.  Note
            that the exceptions from the first pass are still added to the main
            list of exceptions in this.</returns>
        </member>
    </members>
</doc>
